Neil Brown
|
00d48d27de
|
Added an AST Expression for allocating mobiles
|
2007-10-24 19:30:44 +00:00 |
|
Neil Brown
|
cd313fbbb6
|
Added a comment about DerefVariable in SimplifyExprs
|
2007-10-24 16:00:47 +00:00 |
|
Neil Brown
|
08c8d47e2f
|
Overhauled cgenVariable' in GenerateC so that it passes the new tests involving DerefVariable (while still passing all the previous tests)
|
2007-10-24 15:58:20 +00:00 |
|
Neil Brown
|
0eea361f95
|
Added tests for DerefVariable during the genVariable function for the C and C++ backends
|
2007-10-24 15:57:40 +00:00 |
|
Neil Brown
|
f68a6cd31d
|
Added cases for DerefVariable to some functions in Types
|
2007-10-24 15:57:03 +00:00 |
|
Neil Brown
|
f8006696b2
|
Added a dereferenced mobile item to Variable in the AST
|
2007-10-24 15:56:02 +00:00 |
|
Neil Brown
|
9f78582391
|
Added support for mobile types to the genType functions in the C and C++ backends
|
2007-10-21 14:37:05 +00:00 |
|
Neil Brown
|
86054ba754
|
Added code for the Mobile types to the ShowCode module
|
2007-10-21 14:18:51 +00:00 |
|
Neil Brown
|
441b700d8d
|
Added tests for the new mobile types in the C and C++ backends
|
2007-10-21 14:16:24 +00:00 |
|
Neil Brown
|
521730bf8b
|
Added the Mobile type to the AST
|
2007-10-21 14:15:56 +00:00 |
|
Neil Brown
|
f0fdc05ff3
|
Added a large hunk of code in ShowCode that allows us to print out occam programs using the right indentation.
The code is messy, and not quite finished, but for now it isn't actually being used. So I'm committing it, ready to be fixed up at a later date.
|
2007-10-18 09:33:37 +00:00 |
|
Neil Brown
|
7d8f170b7d
|
Added support for the #COMMENT directive to the occam parser
|
2007-10-15 17:12:53 +00:00 |
|
Neil Brown
|
acca3d03fd
|
Removed the A.Main item from the AST entirely
|
2007-10-17 13:43:40 +00:00 |
|
Neil Brown
|
d4a766c594
|
Changed the occam parser to use A.Several with an empty list for its terminator, rather than A.Main
|
2007-10-17 13:43:12 +00:00 |
|
Neil Brown
|
e582f5e508
|
Changed the terminator in Rain source files from A.Main to A.Several (with an empty list), and updated the tests accordingly
|
2007-10-17 13:42:13 +00:00 |
|
Neil Brown
|
12191cb36a
|
Changed the C and C++ backends to take in a Structured rather than a Process as the top-level item
|
2007-10-17 13:25:21 +00:00 |
|
Neil Brown
|
3727307a78
|
Changed the shared passes to operate on Structured items, rather than Process items
|
2007-10-17 13:24:42 +00:00 |
|
Neil Brown
|
1c858e112c
|
Changed the occam and Rain parsers to return a Structured rather than a Process (which will simplify the generated ASTs)
|
2007-10-17 13:21:17 +00:00 |
|
Neil Brown
|
a25824b601
|
Changed the passes to be of type Pass, rather than A.Process -> PassM A.Process
|
2007-10-17 13:09:16 +00:00 |
|
Neil Brown
|
30b7cc686b
|
Doubled the stack size for C++CSP processes, in order to get cg test 08 passing
|
2007-10-14 13:25:31 +00:00 |
|
Neil Brown
|
0fc7ceaf68
|
Fixed an issue where the size in counted array inputs in C++ was not being correctly calculated
|
2007-10-14 11:09:35 +00:00 |
|
Neil Brown
|
fed32e1531
|
Adjusted the tests for inputs to catch an error where the size in counted array inputs in C++ was not being correctly calculated
|
2007-10-14 11:09:08 +00:00 |
|
Neil Brown
|
05293f75c1
|
Fixed an error in the C++CSP support file where arrays with the first dimension being free would not have their size recalculated
|
2007-10-14 11:08:30 +00:00 |
|
Neil Brown
|
c19ae03116
|
Added a pass that changes all C++CSP channels to be of type tockSendableArrayOfBytes, so that the channels can be retyped into each other
|
2007-10-14 10:28:43 +00:00 |
|
Neil Brown
|
053f91bc59
|
Fixed a horrible error in the C++ support header file that was preventing byte-channels from working
|
2007-10-14 00:32:59 +00:00 |
|
Neil Brown
|
3c101bae19
|
Removed my old cgmap function, in favour of the identical library function mapM_
|
2007-10-14 00:14:19 +00:00 |
|
Neil Brown
|
d4dabfd3bb
|
Removed unused code from the GenerateCTest module
|
2007-10-14 00:09:28 +00:00 |
|
Neil Brown
|
fd74473b9b
|
Removed a big load of unused code from the C++ code generation, that was related to the old way of handling protocols
|
2007-10-14 00:08:13 +00:00 |
|
Neil Brown
|
e9dbfbab3c
|
Added the input-case to case pass to the pass-list, and therefore removed all code dealing with input-case statements in the C and C++ backends (and corresponding tests)
|
2007-10-14 00:01:44 +00:00 |
|
Neil Brown
|
d98cb21415
|
Added support for transforming ALT guards to the input-case -> case pass
|
2007-10-13 23:56:36 +00:00 |
|
Neil Brown
|
8b2e14f3bd
|
Added tests and implementation for a new pass for transforming input-case statements into case statements
|
2007-10-13 23:28:41 +00:00 |
|
Neil Brown
|
443b648d73
|
Corrected the pass that creates abbreviations for output expressions to also work on OutputCase statements
|
2007-10-13 20:52:42 +00:00 |
|
Neil Brown
|
ffe8477237
|
Added a fix to prevent running a zero-length list of processes in CIF
|
2007-10-13 20:02:07 +00:00 |
|
Neil Brown
|
9e21e4fc0d
|
Added a C++ implementation of the genRetypeSizes function
|
2007-10-13 17:57:23 +00:00 |
|
Neil Brown
|
1885518b8d
|
Changed the C genRetypeSizes function to pass the tests
|
2007-10-13 17:54:46 +00:00 |
|
Neil Brown
|
acd09137f6
|
Added tests for genRetypeSizes in the C and C++ backends
|
2007-10-13 17:49:09 +00:00 |
|
Neil Brown
|
b4d34d1bc7
|
Made the C++ array stop if there is a problem with a retyping
|
2007-10-13 17:01:39 +00:00 |
|
Neil Brown
|
c74ae12810
|
Changed the type of genBytesIn again, to remove redundancy in its parameters
|
2007-10-13 16:16:52 +00:00 |
|
Neil Brown
|
a98ff8cad0
|
Removed the horrible tockBool type, now that we are no longer using vectors to store C++ arrays
|
2007-10-13 15:40:39 +00:00 |
|
Neil Brown
|
ed38f80db0
|
Changed the type of genRetypeSizes to removed the unused AbbrevMode parameter
|
2007-10-13 15:38:04 +00:00 |
|
Neil Brown
|
9a48683033
|
Refactored the C implementation of genBytesIn to better integrate the old genBytesIn' with genBytesIn
|
2007-10-13 15:01:51 +00:00 |
|
Neil Brown
|
ffd09847fe
|
Removed genBytesIn' from the GenOps, in favour of adding a parameter to genBytesIn, and changed the tests and code accordingly
|
2007-10-13 14:51:29 +00:00 |
|
Neil Brown
|
d5d4580aa3
|
Changed the type of genSlice, and put the C++ version into the GenOps dictionary, as well as adding tests for the function
|
2007-10-13 13:20:40 +00:00 |
|
Neil Brown
|
886659fd09
|
Changed the C++ backend to pass the RETYPES tests (primarily white-space changes, and also reordering the parameters for tockArrayView)
|
2007-10-13 12:58:20 +00:00 |
|
Neil Brown
|
324257198a
|
Changed the C backend to pass the RETYPES tests (mainly white-space changes)
|
2007-10-13 12:51:13 +00:00 |
|
Neil Brown
|
a1f0faac8f
|
Added tests for RETYPES specifications in the C and C++ backends
|
2007-10-13 12:50:39 +00:00 |
|
Neil Brown
|
90799499d8
|
Changed a constructor of tockArrayView in the C++CSP support header, so that retyping conversions are more distinct from same-type constructors
|
2007-10-13 12:50:01 +00:00 |
|
Neil Brown
|
ec43e592f0
|
Fixed the initialisation of C++ channel arrays to initialise the correct array
|
2007-10-11 01:32:36 +00:00 |
|
Neil Brown
|
a1f209fb0d
|
Added missing linker flags to the C++ all-in-one compilation command
|
2007-10-11 01:32:01 +00:00 |
|
Neil Brown
|
a1baa16d9e
|
Made some fixes in the support header files, and changed functions to fix issues with const-ness in C++
|
2007-10-11 01:30:49 +00:00 |
|