Commit graph

60 commits

Author SHA1 Message Date
David Brown
c12aae020d Add IsConsole tests to compiler.mod, update bootstrap. 2016-11-15 18:03:57 +00:00
David Brown
f08e49d856 Fix and simplify fingerprinting for 64 bit values 2016-11-15 11:51:29 +00:00
David Brown
bb143a6162 Include Int and Set type size in symbol fingerprint. 2016-11-13 20:35:53 +00:00
David Brown
716240bdd6 Simplify runtime error reporting and move to platform common source. 2016-11-12 10:20:50 +00:00
David Brown
ed7043324d Remove redundant writer in OPM. Fix Files.Readline for CR/LF and guarantee 0 termination. 2016-11-11 18:23:31 +00:00
David Brown
2cd28725ea Update bootstrap 2016-11-10 11:57:59 +00:00
David Brown
a17c087a41 Uppercase internal SYSTEM.H types address, int*, uint*. Completed. 2016-11-08 12:13:58 +00:00
David Brown
baeb2db81f Uppercase internal SYSTEM.H types address, int*, uint*. Phase 1. 2016-11-08 11:48:33 +00:00
David Brown
6a4748e2af Update bootstrap and fix source change tests. Typo in command ine help. 2016-10-28 20:06:30 +01:00
David Brown
cf49ec30b9 Restore use of alloca for string value copies. mingw build fixes. Support Linux subsystem for Windows. 2016-10-28 18:13:42 +01:00
David Brown
300b67a572 Remove -msse2, fix halt code type on windows platform. 2016-10-18 18:12:33 +01:00
David Brown
2d8c9c4757 Make math test work across x86/x64. 2016-10-17 12:49:05 +01:00
David Brown
80de6dc216 Rationalise -O2 vs -OC library build. 2016-10-15 17:15:05 +01:00
David Brown
dd6f704e68 Don't display sign for NaN as x86 and arm generate it differently for 0.0/0.0 2016-10-12 11:49:21 +01:00
David Brown
ee77ec43ca Out.Mod. Add buffer, simplify real output. 2016-10-11 11:42:22 +01:00
David Brown
a828ff79a4 Implement Out.Real and Out.LongReal. 2016-10-08 17:02:46 +01:00
David Brown
b71526ff5c Add Mathl.Mod. Math and Mathl now compiling, but little tested. 2016-10-04 12:04:43 +01:00
David Brown
80c9d36a7a (Largely untested) Oakwood Math.Mod, some SETxx fixes. 2016-10-03 20:05:22 +01:00
David Brown
c2567a2600 Reorganise system and runtime library modules for both O2 and OC builds. 2016-10-01 17:26:44 +01:00
David Brown
d344c9ce80 Set size testing and constant size propagation. 2016-09-30 20:30:58 +01:00
David Brown
7238be5257 Use SET64 representation in the compiler. 2016-09-30 19:00:33 +01:00
David Brown
2e02f9204c Accept all SET types in INCL. 2016-09-30 18:42:59 +01:00
David Brown
6dedf34785 SET32 and SET64 compatibility and bootstrap update. 2016-09-30 16:38:22 +01:00
David Brown
9ffafc59b4 Reenable library files, fix LONGREAL constants and type casts. 2016-09-26 19:01:59 +01:00
David Brown
41bf2c037d Separate install subdirs for diff size models. Lots of tidying and renaming. 2016-09-25 15:26:04 +01:00
David Brown
fb002de0dd Move alignment and type size code from OPC to OPT. Remove search path in bootstrap compiler. 2016-09-23 19:04:26 +01:00
David Brown
22a4f8e263 Use SYSTEM.ADDRESS in libraries. Build all with -O2. Support INC(a,b) for any int a,b that support a:=a+b. 2016-09-23 13:04:24 +01:00
David Brown
cca132d784 More adjustments to ADDRESS vs LONGINT. An -O2 on 64 bit compiler has worked once! 2016-09-23 10:53:24 +01:00
David Brown
7b8eed9993 Revert LEN() to returnng LONGINT 2016-09-22 20:48:13 +01:00
David Brown
b40dc4e2f8 Some support in makefile for 32 bit model. 2016-09-22 20:02:46 +01:00
David Brown
246a961055 Tidy OPM, update usage display. 2016-09-22 15:03:08 +01:00
David Brown
76b6a8fc23 Clean option handling and add size model and target machine options. 2016-09-21 18:28:17 +01:00
David Brown
1c94abedc6 Simplify parameterisable memory model variables. 2016-09-21 14:28:53 +01:00
David Brown
0ea077814f More LONGINT changes to INT64. Hopefully fixes android and pi builds. 2016-09-20 17:51:14 +01:00
David Brown
1a83167d5a Fix ethMD5 build. May need more work to be correct on 64 bit builds. 2016-09-20 16:43:34 +01:00
David Brown
9971e56451 INT64 support in the interface browser. 2016-09-18 15:52:11 +01:00
David Brown
636c128d14 Fix import of SYSTEM.INT64 on 32 bit builds. 2016-09-18 10:55:14 +01:00
David Brown
dc699db9f5 Support 64 bit integer literals on all builds, and fix 64 bit Console.hex display. 2016-09-15 15:23:08 +01:00
David Brown
7efd5a0158 More LONGINTS changed to Address. Remove special FetchAddress code in Heap. 2016-09-14 13:02:00 +01:00
David Brown
9baf4c9429 Fix shift/rotate for all integer types, add tests, make build order work for SYSTEM.c/h changes. 2016-09-12 15:55:54 +01:00
David Brown
74a085dda3 Update bootstrap. 2016-09-11 18:33:30 +01:00
David Brown
ebfc60f49d Define integer sizes before including SYSTEM.h 2016-09-06 20:48:22 +01:00
David Brown
a865643d6c Change of mind: s/uintptr/address/. Replace LONGINT with ADDRESS in Platform*. 2016-09-04 14:34:24 +01:00
David Brown
db18774de1 Allow SYSTEM.VAL of constant in CONST and use in Heap.Mod. 2016-09-03 17:47:55 +01:00
David Brown
cdd8a26481 Moving Heap.Mod to SYSTEM.UINTPTR. Only 64 bit working for now. 2016-09-03 11:56:17 +01:00
David Brown
11de6b8512 uintptr for alloc/free, some sys fns from LONGINT to int64. 2016-09-02 13:02:44 +01:00
David Brown
ee8342ef0d Moving to config independent types stage 1 - generate intxx types. 2016-09-01 14:14:06 +01:00
David Brown
159f5a3d80 Update bootstrap source and snapshot binaries 2016-09-01 12:04:17 +01:00
David Brown
a1fd798f6d Remove all use of forms SInt and LInt and remove intSet using just Int instead. 2016-08-31 18:33:53 +01:00
David Brown
0508097ffe Base expression casting on C int size, remove dependencies on form=LInt. 2016-08-31 17:15:44 +01:00