Commit graph

47 commits

Author SHA1 Message Date
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
baeb2db81f Uppercase internal SYSTEM.H types address, int*, uint*. Phase 1. 2016-11-08 11:48:33 +00: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
1507d9cb0a Force git rename of VT100 in bootstrap, make SYSTEM.* mdel independent. 2016-10-15 19:05:08 +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
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
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
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
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
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
0508097ffe Base expression casting on C int size, remove dependencies on form=LInt. 2016-08-31 17:15:44 +01:00
David Brown
b3c71fb2f0 Include int size in .sym files, fix __IN for out of range values, better naming. 2016-08-30 19:01:24 +01:00
David Brown
b6385f8b8c Add basic SYSTEM.ADRINT type. 2016-08-26 16:28:07 +01:00
David C W Brown
da88496c5f Tidy (#41)
* Deduplicate common constants into OPM and do some source format tidying.

* Fix postpush buildall script to force checkout of updated buildall.

* Show enlistment branch in makefiles

* Support non-printables in string literals and tidy case alignment and constant literals.

* Common code for MIN and MAX of integer types.

* Common code for SInt/Int/LInt in ConstOp parameter preparation.

* Common code for SInt/Int/LInt in Op parameter preparation.

* Refactor SetIntType to work with byte size directly. Prepare to revert my incorrect VAL changes.

* Original meaning of VAL restored. Many library files disabled until use of VAL in 64 bits fixed.

* Make Reals.Mod independent of INTEGER size and add reals tests.

* Implement fraction, IsInfinity and IsNaN in oocLowReal.Mod.

* OPB little simplifications and ShorterSize/LongerSize functions.

* Add test for alignment computability

* Replace alignment constants with calculated alignment.

* typ.size aware OPV.Convert

* Add SYSTEM_INT64 and make tests name independent.

* Remove SYSTEM.H includes (string.h and stdint.h).

* Replace uses of uintptr_t and size_t with SYSTEM_ADDRESS.

* Sad hack to make FreeBSD and OpenBSD happy with memcpy declaration.

* Detect 64 bit on FreeBSD, and size_t defined on OpenBSD.

* %zd not supportd by mingw, cast strnlen return to int.

* Add debug for intermittent failure only on OpenBSD.

* Add textTexts as a confidence test and tidy up a couple of other tests.

* Update binary test process.
2016-08-25 14:41:00 +01:00
David Brown
ca2cc52a44 Port updated tests and binary snapping, with corrected Reals code, from tidy branch. 2016-08-24 14:10:06 +01:00
David Brown
b1dc7d77e8 Update boostrap source 2016-07-22 20:20:57 +01:00
David Brown
c21975dc2a Remove limit on numeric value of OS file handle. 2016-07-21 12:26:20 +01:00
David Brown
d6acf11700 Update bootstrap sources. 2016-07-19 15:37:07 +01:00
David Brown
f784a41f8f Update bootstrap sources. 2016-07-11 11:01:11 +01:00
David Brown
d97668a209 Initial checksum support in build. 2016-06-30 18:36:17 +01:00
David Brown
43c5f44c10 Add bootstrap and master make files. 2016-06-16 16:51:11 +01:00