Neil Brown
|
edc3a7e910
|
Removed the die function (that has no source position) and as far as possible replaced all its uses with dieP and a valid position
|
2008-01-28 17:21:13 +00:00 |
|
Neil Brown
|
7433e49d49
|
Added support for List types to the C and C++ backend, in genType at least
|
2007-10-27 11:24:24 +00:00 |
|
Neil Brown
|
7f59eec189
|
Changed the C and C++ backends (and tests) to handle declarations with initialisers properly
|
2007-10-25 00:27:12 +00:00 |
|
Neil Brown
|
6b95827cab
|
Added an optional initialiser-expression to Declaration in the AST, and changed the rest of the code accordingly
|
2007-10-24 23:50:00 +00:00 |
|
Neil Brown
|
83f654a273
|
Implemented the code for ClearMobile in the C and C++ backends
|
2007-10-24 20:54:37 +00:00 |
|
Neil Brown
|
dd86b240b5
|
Implemented (most of the needed) support for AllocMobile in the C and C++ backends
|
2007-10-24 19:32:58 +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
|
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
|
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
|
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
|
3c101bae19
|
Removed my old cgmap function, in favour of the identical library function mapM_
|
2007-10-14 00:14:19 +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
|
9e21e4fc0d
|
Added a C++ implementation of the genRetypeSizes function
|
2007-10-13 17:57:23 +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
|
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
|
ec43e592f0
|
Fixed the initialisation of C++ channel arrays to initialise the correct array
|
2007-10-11 01:32:36 +00:00 |
|
Neil Brown
|
8d0b5fbe1a
|
Added a helper function for receiving an array of bytes, and changed the C++CSP backend and tests to use the function
|
2007-10-11 00:51:07 +00:00 |
|
Neil Brown
|
cc2040679b
|
Changed the C and C++ backends to pass the input tests
|
2007-10-10 20:46:23 +00:00 |
|
Neil Brown
|
5b10466e68
|
Fixed the channel arrays (and abbreviations thereof) to have the correct types (correcting an earlier mistake), and added helper functions to the support headers for easy initialisation of the arrays
|
2007-10-07 23:03:15 +00:00 |
|
Neil Brown
|
5e1e51ac15
|
Refactored the C++ genOutputItem to merge some duplicate code
|
2007-10-06 23:08:05 +00:00 |
|
Neil Brown
|
9af1ec78bb
|
Fixed all the tests for sending items in C++, and made the tests pass
|
2007-10-06 23:05:03 +00:00 |
|
Neil Brown
|
6d29bbd260
|
Added some tests for outputs in the C and C++ backends, but the C++ backend needs fixing
|
2007-10-06 18:20:55 +00:00 |
|
Neil Brown
|
3b20d18937
|
Added tests for the genOutput and genOutputCase functions, corrected the C++ code, and added some helper functions to the C++ support header
|
2007-10-06 17:05:49 +00:00 |
|
Neil Brown
|
97ee0c4a4e
|
Added tests for ProtocolCase in introduceSpec, and made the C++ version behave the same as the C version
|
2007-10-06 16:35:02 +00:00 |
|
Neil Brown
|
03a4b8e41b
|
Removed the generate of tuples for sequential protocols in C++, since we're now using a byte-array approach
|
2007-10-06 16:22:51 +00:00 |
|
Neil Brown
|
062851dabf
|
Added tests for introduceSpec and Is, for all types except arrays
|
2007-10-06 15:55:18 +00:00 |
|
Neil Brown
|
c3fad80f06
|
Changed the behaviour of the C++ version of declareArraySizes, moving towards potentially merging more of the C++ array handling with the C array handling
|
2007-10-06 12:49:30 +00:00 |
|
Neil Brown
|
e7cdaf2e90
|
Changed the type of genArraySizesLiteral, added tests for the C++ version and implemented the C++ version
|
2007-10-06 12:31:14 +00:00 |
|
Neil Brown
|
8ea4ad79e8
|
Changed the type of declareArraySizes, and added a C++ implementation of it
|
2007-10-06 12:22:40 +00:00 |
|
Neil Brown
|
071172954d
|
Removed redundant/common code in the C++ backend relating to arrays
|
2007-10-06 11:59:29 +00:00 |
|
Neil Brown
|
a583403372
|
Removed the C++ code for IsChannelArray, so that the C version is used instead
|
2007-10-06 11:40:10 +00:00 |
|
Neil Brown
|
c521187cd2
|
Added a genArrayStoreName function to GenOps and implemented it for both C and C++
|
2007-10-06 11:30:03 +00:00 |
|
Neil Brown
|
9d5164d9c1
|
Changed the generation of the record structs to use the altered genDeclaration (that can now generate declarations for inside records)
|
2007-10-05 20:06:11 +00:00 |
|
Neil Brown
|
904d1e8f5f
|
Changed the genDeclaration function so that it can either generate stand-alone declarations (as it did before), or declarations inside records
|
2007-10-05 19:01:42 +00:00 |
|
Neil Brown
|
34609f1fee
|
Corrected the C++ tests and implementation of arrays inside records -- the dimensions of the tockArrayView were not being set, but they should be.
|
2007-10-05 17:52:37 +00:00 |
|
Neil Brown
|
8cd20b9906
|
Changed the C++ implementation of introduceSpec to fall through to the C implementation for all unhandled cases (which will remove duplicate code)
|
2007-10-05 17:51:00 +00:00 |
|
Neil Brown
|
9effe37977
|
Removed the declareType function from GenOps (it has been merged with genType) and changed the C++ channel types to pass the new genType tests
|
2007-10-05 17:01:17 +00:00 |
|
Neil Brown
|
1f8a5555ac
|
Added a test for genIf in the C and C++ backends
|
2007-10-04 14:36:56 +00:00 |
|
Neil Brown
|
af74ac1039
|
Added a test of genGetTime for the C and C++ backends
|
2007-10-04 14:06:15 +00:00 |
|
Neil Brown
|
b4ac249367
|
Changed the C and C++ channel arrays to be actual arrays of channels, not arrays of channel pointers as they were before.
The effects of this change will not be fully tested until further tests have been written (especially for genVariable).
|
2007-10-04 00:53:25 +00:00 |
|
Neil Brown
|
93610a5837
|
Changed the C++ arrays to use standard C-like arrays rather than std::vector as they used to
|
2007-10-04 00:19:38 +00:00 |
|
Neil Brown
|
b8556bfe6d
|
Refactored some of the tested functions in the C and C++ backends to use genSizeSuffix rather than using _sizes/.extent directly
|
2007-10-04 00:07:15 +00:00 |
|
Neil Brown
|
f3e15b6f78
|
Changed the C genOverArray function to pass the test, and removed the now-redundant C++ version
|
2007-10-03 23:18:53 +00:00 |
|
Neil Brown
|
65fb758dbd
|
Added tests for genDeclaration, and tweaked the backends to make the tests pass
|
2007-10-03 17:58:59 +00:00 |
|