Taddeus Kroes
|
1386f8af75
Desugaring now moves splitted initializations to start of function body
|
%!s(int64=11) %!d(string=hai) anos |
Taddeus Kroes
|
7867875804
Implemented new scoping rules, moved up context analysys, tweaked where extern variables are handled, fixed some bugs (see updated html docs) (needs new test cases!)
|
%!s(int64=11) %!d(string=hai) anos |
Taddeus Kroes
|
0a4c9499c1
Code cleanup
|
%!s(int64=11) %!d(string=hai) anos |
Taddeus Kroes
|
4337398bfa
Removed some unnessecary parentheses from tuples and did some general cleanup
|
%!s(int64=11) %!d(string=hai) anos |
Taddeus Kroes
|
cd575763a0
Extern variables now use the .exportvar/.importvar directives + some general fixes
|
%!s(int64=11) %!d(string=hai) anos |
Taddeus Kroes
|
f074552d42
Array constant initialisations now require a strict nesting level equal to the number of dimensions; simplified some related code
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
a574d8ace5
IntVal now takes a 32-bit int as argument (not 31 or 63), and integer bound check is moved to lexer
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
885fa4bc95
Changed the way errors are represented + context analysis now prints multiple errors before exiting
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
ef86a30481
Rewrote default traversal function such that a traversal now has a secondary result
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
81894d4b01
Variable declarations are now again moved to the beginning of the function body
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
4f45e79231
Revert "For-to-while loop transformations now use inline vardecs"
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
b530c36dde
Generated variable names now have leading underscores instead of dollar signs
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
3082b87b35
Fixed weird context analysis on array dimension names
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
afb60883d5
For-to-while loop transformations now use inline vardecs
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
013ecd4880
Global arrays may now also be initialised
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
e2cc38a7b6
VarDec and Assign are now interleaved, making scoping correct
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
6163840311
Array dimensions are now uniquely named to avoid weird context analysis errors when arrays are redefined
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
65ff039e7c
Added loop unrolling phase
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
2b0ee7d2fd
Fixed array VarDec dimensions not being propagated as constants
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
111c1d546c
Documented extern variables phase, moved the phase to before dimension reduction, fixed dimension getters/setters for extern array variables
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
b79720f90d
Documented desugaring phase
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
d2ac2ab8ea
Removed 'open Globals' and used 'Globals.args' instead
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
3403c4a3fc
Formatted all source code to 2 spaces as tab, and some more prettifications
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
7c9b5cf1af
Added interface files for all modules, moved command-line arguments to globals.ml, made types.ml an .mli file
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
b418c7c589
Generated array dimension names are now unique to avoid weird error messages when array definitions have name clashes
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
60a3a48b60
Scalar array initialisation now supports non-constant values, which are evaluated only once
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
e92fd83385
Added single-time evaluation for array constant variables ad array dimensions
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
6ba4edeec6
Typo
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
f979c1faf4
Changed the way array types are represented, and cleaned up a lot of code in the process
|
%!s(int64=12) %!d(string=hai) anos |
Taddeus Kroes
|
ae20d87ad4
Re-introduced DimDec node to get array dimension declarations to work properly, and rewrote a bunch of code to make it actually work...
|
%!s(int64=12) %!d(string=hai) anos |