Neil Brown
b3fdb6e2df
Fixed a typo on the newly added testcase
2009-04-18 21:26:15 +00:00
Neil Brown
79c31ea201
Added a new test based on a failure in sdlraster
2009-04-18 20:42:03 +00:00
Neil Brown
936dc29fde
Fixed some of the tests, and added another testcase for array passing, based on one of Carl's examples
2009-03-20 12:59:16 +00:00
Neil Brown
94d436cbaf
Added the testcase I'm using for the implicit mobility stuff
2009-03-19 11:47:31 +00:00
Adam Sampson
77be0c1137
Add some testcases for usage-checking on user-defined array types.
...
These were based on KRoC bug #194 , submitted by Jonathan May.
2009-03-21 15:37:56 +00:00
Neil Brown
3bdc5d0ff6
Fixed the usage checking so that it obeys the correct pragma for each type of check (and added another test)
2009-02-10 11:40:00 +00:00
Neil Brown
de9469fad3
Corrected some of the other tests that fail the new abbreviation checking
2009-02-10 11:32:36 +00:00
Neil Brown
e87e83f073
Fixed a test that was labelled with the wrong expectation
2009-02-10 11:31:00 +00:00
Neil Brown
05c87e6935
Added some testcases for the correct use of the right pragma (of SHARED and PERMITALIASES)
2009-02-10 01:13:31 +00:00
Neil Brown
df34d666ba
Fixed the handling of OR in logical expressions, and added a testcase
2009-02-09 23:04:52 +00:00
Neil Brown
6818cdc114
Added a few more tests that helped me track down a bug I was introducing
2009-02-09 22:41:40 +00:00
Neil Brown
7cf83512c5
Added a testcase which I think highlights a problematic bug
2009-02-09 15:55:13 +00:00
Neil Brown
4e152a0f70
Added some more replicated tests with more complex combinations of IF conditions
2009-02-09 15:13:53 +00:00
Neil Brown
2e36a8a218
Fixed a typo in a test name
2009-02-09 13:13:19 +00:00
Neil Brown
1d4a62578a
Fixed a typo in one of the testcases
2009-02-09 11:31:34 +00:00
Neil Brown
b4e79ca62e
Realised that channels are not being parallel usage checked at all, and added testcases for them
2009-02-09 10:28:45 +00:00
Neil Brown
00a8be1984
Added some tests ready to check usage checking on channel arrays
2009-02-08 23:40:40 +00:00
Neil Brown
3604ab6412
Added some testcases related to checking the use of abbreviations
2009-02-08 23:25:30 +00:00
Neil Brown
e165030751
Stopped Tock checking arrays that are declared inside the PAR being examined
...
Fixes #84
2009-02-08 23:08:58 +00:00
Neil Brown
1c1860ce7e
Added lots of new tests for parallel replicators with BK, all of which fail
2009-02-08 16:06:15 +00:00
Neil Brown
571815c571
Added another test which shows a problem with the usage checking
2009-02-05 16:27:57 +00:00
Neil Brown
2ecd91e36f
Changed the array usage checking to always include equations involving replicators
...
This allows us to check situations like this:
PAR i = 0 FOR 10
IF
i = 0
a[10] := 3
TRUE
a[i] := 3
Previously this would have been flagged unsafe (because 10 can overlap with 10 between the replicated branches).
But with this change, the equations on the replicators (including: i'>=i+1, i = 0, i' = 0) are included alongside 10=10, so there is no solution over all because the replicator equations prevent a solution (i.e. the 10 can't be used twice in parallel).
2009-02-05 15:47:41 +00:00
Neil Brown
42fa9b12e2
Added a lot more testcases related to background knowledge in usage checking
2009-02-05 14:53:42 +00:00
Neil Brown
0cbe5de96c
Added a few more tests to help make sure I don't break anything
2009-02-04 13:08:11 +00:00
Neil Brown
d6530051ab
Added another usage check tests
2009-02-04 11:54:50 +00:00
Neil Brown
6f607972e6
Added some more usage check tests, primarily for non-array variables used in odd ways in replicated PARs
2009-02-04 09:37:28 +00:00
Neil Brown
c7931bf800
Added more tests ready for channel-end inference
2009-01-23 14:47:59 +00:00
Neil Brown
d184721979
Added yet more tests for channel-ends
2009-01-21 00:00:31 +00:00
Neil Brown
16d8468b08
Added more channel end tests, involving abbreviations before use
2009-01-20 23:50:02 +00:00
Neil Brown
1adca155dd
Added a file full of tests for inferring direction specifiers in PROC formals
2009-01-20 23:43:42 +00:00
Neil Brown
e001d9173c
Defeated the GCC optimiser, to get a decent estimate of how slow multiplication is
2009-01-22 16:52:00 +00:00
Neil Brown
72a8824940
Had a go at implementing multiply overflow checking (with a single division, and pre-checks)
...
I also added an occam testcase to help time the different between * and TIMES. But gcc optimises out the loop with TIMES under -O2, and with -O0 there is a factor of four difference.
2009-01-22 16:51:54 +00:00
Neil Brown
ec25ff9901
Added some tests for the type-checking of poison statements in Rain
2008-09-12 14:37:11 +00:00
Adam Sampson
62a0873d3d
Implement channel direction decorators.
...
This is mostly straightforward: modify the parser to allow direction
decorators in the right places, and extend the type checker to match.
There's some slight awkwardness in that some of the Types functions
have to perform the same checks as the type checker (e.g. directing a
non-channel), so I've tidied up their error messages a bit.
At the backend, I've just added a little pass to strip out all the
DirectedVariables, since the other backend passes don't handle them
gracefully. From the occam/C point of view this is fine, but I'm not
sure if it's going to cause problems for C++.
2008-06-09 21:35:20 +00:00
Neil Brown
2a56189d30
Added an additional testcase for conditions in the usage checking
2008-06-07 20:29:21 +00:00
Neil Brown
cb6fb40440
Added some more testcases involving deduction from (sequential) replicator bounds
2008-06-06 10:39:12 +00:00
Neil Brown
b9b025a429
Added some tests for the new usage checking and reachability mechanisms
2008-06-05 23:11:00 +00:00
Adam Sampson
f2352019ab
Implement INITIAL and RESULT abbreviations.
...
This adds the passes to transform INITIAL into the correct form.
Fixes #42 .
2008-06-03 14:57:24 +00:00
Adam Sampson
6ee21f76c9
Initial work on supporting INITIAL and RESULT abbreviations.
...
This fixes the AST, parser and typechecker, and adds a pass to
transform Result back into Abbrev, but doesn't transform Initial yet.
(It actually works for trivial stuff anyway, but it won't do the right
thing for complex types or PROC parameters.)
It appears (to me) to make sense to support INITIAL/RESULT reshaping
and retyping too, so this does.
Refs #42 .
2008-06-02 20:41:37 +00:00
Neil Brown
46ef8e7e65
Annotated the move Rain testcase with the expected results
2008-05-30 18:28:19 +00:00
Neil Brown
a7944ddf9f
Changed the move testcase to use the correct Rain TLP interface
2008-05-30 17:32:06 +00:00
Neil Brown
a5fca4816b
Added the beginnings of support for implicit mobility for Rain (just printing out the decisions for now)
2008-05-30 17:16:10 +00:00
Adam Sampson
8b3eba594d
Add SubscriptCheck field to SubscriptFromFor etc.
...
This makes it possible to mark a slice as not needing runtime
checking, which is immediately useful for _sizes arrays.
This fixes cgtest03, which was previously failing to compile because
the _sizes array for one of the constants in it contained a runtime
check and thus wasn't itself constant. I've added a testcase file for
the relevant bit of code.
2008-05-26 17:36:26 +00:00
Neil Brown
926659cf70
Fixed the Rain lists testcase to adhere to the new type unification scheme
2008-05-20 21:56:25 +00:00
Neil Brown
f9d55d2c65
Expanded the Rain lists testcase
2008-03-25 18:45:19 +00:00
Neil Brown
ecb4758b64
Corrected a slight bug in the type tests
2008-05-18 09:34:04 +00:00
Neil Brown
abbca5f235
Added tests for channel communications (and type unification)
2008-05-17 19:43:44 +00:00
Neil Brown
0aeebfeeb8
Added more tests for the Rain type system, this time assignment
2008-05-17 14:19:50 +00:00
Neil Brown
3249381995
Added a Rain test file for the type checker
2008-05-17 13:17:12 +00:00
Adam Sampson
04da66531f
Fix nesting.occ so it has a valid TLP signature.
2008-05-15 12:23:44 +00:00