Commit graph

132 commits

Author SHA1 Message Date
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
1fa182c7ce Fix generalised ReadNum and use for Sym reading. 2016-09-30 18:15:46 +01:00
David Brown
3dc5049d5a Stepping toward generalised ReadNum. 2016-09-30 17:19:26 +01:00
David Brown
25d99fd36a Add SYSTEM.SET32 and 64 types. Fix 32 bit build. 2016-09-28 18:48:56 +01:00
David Brown
212bcd58b9 Beginning adding -OC (large model) runtime library 2016-09-28 11:38:53 +01:00
David Brown
9ffafc59b4 Reenable library files, fix LONGREAL constants and type casts. 2016-09-26 19:01:59 +01:00
David Brown
ef0a447a68 Fix shared library naming, and getcwd warning. 2016-09-25 16:32:44 +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
8ab4057a10 Make address strobj be equiv int type and remove param checking hack. 2016-09-24 12:13:26 +01:00
David Brown
d683df3e72 Fix browser command following TypSize move. 2016-09-23 19:34:18 +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
8017aa445c Beginning to simplify build process 2016-09-23 17:12:02 +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
b158671cf8 SYSTEM.ADR and LEN both return SYSTEM.ADDRESS. 2016-09-22 18:40:35 +01:00
David Brown
20a97bb570 Add check that double and long long (both 64 bit) have same alignment. 2016-09-21 11:56:21 +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
f13130bbd3 Add set size to __SETOF and __SETRNG. 2016-09-13 20:35:29 +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
24aa3c6508 -Ob not working on my FreeBSD, use -O1. Better LP64 detection for OpenBSD. 2016-09-10 12:24:06 +01:00
David Brown
83aaa70290 SYSTEM.ADDRESS signed (again), DIV, MOD full integer support, ASH and checks support 64 bit ints.
Change (back) to address type being signed.
DIV and MOD fully defined for the full range of integer on both parameters.
_X, _XF, _R and _RF checks upgraded for 64 bit support.
ASH upgraded for 64 bit.
Add div and mod tests to language confidence test.
Enable debuggable C compiler options.
2016-09-09 14:47:40 +01:00
David Brown
ebfc60f49d Define integer sizes before including SYSTEM.h 2016-09-06 20:48:22 +01:00
David Brown
682fa59e42 Fix mingw windows build. 2016-09-04 16:38:17 +01:00
David Brown
6851833a1e Remove some temporary bottstrapping types. Change 'U_' to 'u'. 2016-09-01 14:45:23 +01:00
David Brown
7d7579a36d Remove unused AlignSize proc, and clean sym files before compiler build. 2016-08-29 17:47:54 +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
3a7b742ea7 Update binary test process. 2016-08-24 16:26:43 +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
d43279d053 postpushpl fix buildall parameter (yes, again). 2016-07-21 13:58:46 +01:00
David Brown
0d988a8ea0 postpush.pl fix branch passed to buildall. 2016-07-21 12:56:10 +01:00
David Brown
ff9a45bc1a postpush.pl must pull latest changed branch to get appropriate buildall.pl. 2016-07-21 12:49:27 +01:00
David Brown
61eb8199d4 Make autobuild use latest changed branch. 2016-07-21 12:39:10 +01:00
David Brown
0004fca318 Status report tweaks. 2016-07-20 14:32:15 +01:00
David Brown
92e892c450 Fix success colour and width of build status report. 2016-07-20 12:25:41 +01:00
David Brown
4bbfe120c7 Add reporting of generated assembler changes. 2016-07-20 11:15:19 +01:00
David Brown
b3e2c5f9a6 Second attempt at disabling assembler generation for cygwin 64. 2016-07-19 21:55:47 +01:00
David Brown
0349189479 Separate assembly source by build flavour. 2016-07-19 20:38:41 +01:00
David Brown
ece90b85c5 Omit (more) platform specific settings from code change tests. 2016-07-19 15:54:09 +01:00
David Brown
d6acf11700 Update bootstrap sources. 2016-07-19 15:37:07 +01:00
David Brown
afb70fa178 Try explicitly calling 'sh' in confidence tests to avoid limitation on termux. 2016-07-18 17:25:25 +01:00
David Brown
c146cab6c1 Add tests for ASH, SYSTEM.LSH and SYSTEM.ROT. 2016-07-16 18:29:51 +01:00
David Brown
d3ee82a0c4 Remove invalid working source. 2016-07-15 17:23:04 +01:00