Neil Brown
|
a1f0faac8f
|
Added tests for RETYPES specifications in the C and C++ backends
|
2007-10-13 12:50:39 +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
|
4935a04aa4
|
Added the simplifyComms pass to the shared pass list for the compiler, and removed the corresponding code in the C backend that the pass replaces
|
2007-10-11 00:14:27 +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
|
3f6fe50438
|
Added tests for (non-case-protocol) inputs in the C and C++ backends
|
2007-10-10 20:45:05 +00:00 |
|
Neil Brown
|
32fa80be0f
|
Removed the kroc C wrapper file (kroc-wrapper-c.c) in favour of tacking it onto the end of each C file we create (to better facilitate all-in-one compilation)
|
2007-10-08 22:04:11 +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
|
4e6938e0ae
|
Fixed AnalyseAsm so that it can parse negative literals in the assembly code
|
2007-10-07 15:09:36 +00:00 |
|
Neil Brown
|
5450f77963
|
Added a test for genBytesIn in the C and C++ backends
|
2007-10-07 11:47:39 +00:00 |
|
Neil Brown
|
9c4f977416
|
Added tests for channels carrying counted arrays of arrays for the C and C++ backends
|
2007-10-06 23:50:20 +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
|
0cf27ce4b6
|
Simplified the tests for IsChannelArray a little by overriding genVariable in the test
|
2007-10-06 13:32:12 +00:00 |
|
Neil Brown
|
0517465eff
|
Removed the function genArraySizesSize from GenOps, since it was only called in one place
|
2007-10-06 12:52:59 +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
|
9a6f9186a9
|
Changed the behaviour of genArraySizesLiteral to include the curly brackets
|
2007-10-06 11:55:50 +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
|
4c0c27f350
|
Added a test for handling IsChannelArray in introduceSpec, for both C and C++ backends
|
2007-10-06 11:38:16 +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
|
24b3975cf8
|
Fixed channel arrays that are abbreviations to have the proper indirection, because they can be constructed in a special way (using IsChannelArray)
|
2007-10-06 00:57: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
|
e68e80ddda
|
Added a new type to the C++ header, tockSendableArrayOfBytes, ready for dealing with protocols and counted arrays properly. Also removed the tockAny type.
The tests for genType on channels of ANY, protocols, and counted arrays have also been changed accordingly.
|
2007-10-05 16:59:14 +00:00 |
|
Neil Brown
|
2b8010138b
|
Added the first part of a test for introduceSpec/removeSpec in the C and C++ backends
|
2007-10-05 11:44:23 +00:00 |
|
Neil Brown
|
4d2833affb
|
Added a test for genWhile to the C and C++ backends
|
2007-10-04 14:58:28 +00:00 |
|
Neil Brown
|
986b6d956a
|
Added a test for genWait in the C and C++ backends
|
2007-10-04 14:55:03 +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
|
bc7e1b1433
|
Added a test for genCase on the C and C++ backends
|
2007-10-04 13:57:19 +00:00 |
|
Neil Brown
|
38fb0baa4e
|
Added a test for genAssign in the C and C++ backends, and tweaked its implementation to pass the tests
|
2007-10-04 12:40:13 +00:00 |
|
Neil Brown
|
d3fa9fb8c8
|
Added some documentation about the testing strategy in GenerateC
|
2007-10-04 12:12:12 +00:00 |
|
Neil Brown
|
ae73eef435
|
Fixed a bug in genVariable in GenerateC where recursive calls with checkValid being False would still generate checks
|
2007-10-04 12:06:20 +00:00 |
|
Neil Brown
|
a4638a252d
|
Changed an instance of _sizes in GenerateC to use the genSizeSuffix function
|
2007-10-04 12:03:55 +00:00 |
|
Neil Brown
|
b46dabe555
|
Added tests of the C and C++ backend pertaining to records
|
2007-10-04 12:02:08 +00:00 |
|
Neil Brown
|
46d2ff32f3
|
Added tests for genVariable in the C and C++ backends
|
2007-10-04 12:01:29 +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
|
7ef16c3b6c
|
Added a test for declareInit and declareFree, to test the C and C++ backends
|
2007-10-04 00:24:32 +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 |
|