Cédric Pasteur
1aac6f7be4
Fixed bug in unicity check in linear typing
...
Test case included
2011-10-07 11:59:13 +02:00
Cédric Pasteur
9427117fe1
Fixed linear typing of accumulators
2011-09-09 11:29:24 +02:00
Cédric Pasteur
08437bf448
Fixed linear typing of nested calls
2011-09-08 14:27:24 +02:00
Cédric Pasteur
7bf5f3f323
Fixed typing of iterator
2011-09-08 14:10:55 +02:00
Cédric Pasteur
2105d7ad18
Fix for linear types and automata
2011-09-08 10:45:19 +02:00
Cédric Pasteur
81947eca40
Made linearity field not optional
...
This helped solve a few bugs with linear types,
for instance when using automata.
The intermediate code is not well-typed (wrt to
linear types only), after the encoding of automata.
2011-09-07 17:51:31 +02:00
Gwenaël Delaval
626b6cad3f
New tests
...
- ckannot.ept : bug with clock annotations handling in Normalize (corrected)
- threestates.ept : handling of merges in Normalize (corrected)
2011-08-04 23:47:28 +02:00
Gwenaël Delaval
c57b71b6aa
Merge branch 'bzr' into decade
...
- Added Boolean module (enum types to boolean vectors)
- Added Hept_clocking analysis, called before Boolean
- Added z3z target from minils (sigali format)
- Bug corrections in Normalize, Normalize_mem
Conflicts:
compiler/heptagon/analysis/typing.ml
compiler/heptagon/heptagon.ml
compiler/heptagon/parsing/hept_parser.mly
compiler/heptagon/parsing/hept_parsetree.ml
compiler/heptagon/parsing/hept_scoping.ml
compiler/main/hept2mls.ml
compiler/main/heptc.ml
compiler/main/mls2seq.ml
compiler/minils/minils.ml
compiler/minils/transformations/normalize_mem.ml
test/check
2011-08-04 13:37:33 +02:00
Cédric Pasteur
69a5ad8df8
Fixed code generation of n-dim static arrays
...
Also added some tests.
2011-07-21 11:19:07 +02:00
Cédric Pasteur
7d95b95ed7
Merge branch 'memalloc' into decade
...
Conflicts:
compiler/global/signature.ml
compiler/heptagon/analysis/typing.ml
compiler/heptagon/hept_printer.ml
compiler/heptagon/hept_utils.ml
compiler/heptagon/heptagon.ml
compiler/heptagon/parsing/hept_parser.mly
compiler/heptagon/parsing/hept_parsetree.ml
compiler/heptagon/parsing/hept_scoping.ml
compiler/heptagon/transformations/switch.ml
compiler/main/hept2mls.ml
compiler/minils/minils.ml
compiler/minils/mls_printer.ml
compiler/obc/c/cgen.ml
compiler/obc/control.ml
compiler/utilities/misc.mli
2011-07-21 08:50:45 +02:00
Adrien Guatto
7d9e31a83b
Tomato checking in check.sh
2011-07-08 11:56:38 +02:00
Léonard Gérard
0518ecafe6
Merge branch 'multidimensional' into decade
...
Conflicts:
compiler/obc/c/cgen.ml
compiler/obc/java/java_main.ml
2011-07-08 11:36:46 +02:00
Léonard Gérard
5837f3906f
Multidimensional iterators in java.
2011-06-28 17:50:42 +02:00
Léonard Gérard
9e881550a7
test iterators.
2011-06-28 17:50:42 +02:00
Léonard Gérard
b73e6502a6
resets are now without constraint.
2011-05-26 15:56:59 +02:00
Léonard Gérard
1d6feeef54
some more tests
2011-05-26 15:56:59 +02:00
Léonard Gérard
2a2b363bf7
Real asynchronous resets.
2011-05-26 15:56:59 +02:00
Léonard Gérard
96272339e4
some tests.
2011-05-26 15:56:59 +02:00
Léonard Gérard
74cc367a0e
correct base_clock and signature.
2011-05-26 15:56:59 +02:00
Léonard Gérard
07e5279bff
two small tests.
2011-05-26 15:56:59 +02:00
Léonard Gérard
40fcb4d73e
improve syntax
2011-05-26 15:56:58 +02:00
Leonard Gerard
88497a2da3
parsing clocks.
2011-05-26 15:56:58 +02:00
Cédric Pasteur
caa149ac39
Tests for memory allocation and linear typing
2011-05-25 09:12:15 +02:00
Cédric Pasteur
285abc48bf
Fixed some bugs
2011-05-25 09:12:12 +02:00
Leonard Gerard
1d390848fe
real good switch fix.
...
The order switch then reset was wrong, since some reset reset slower inner blocks and equations, to have reset correct after switch it would have been necessary to sample the reset condition correctly (use r when c) using the level_ck... anyway the order seems now irrelevant considering code size.
2011-05-10 20:28:39 +02:00
Adrien Guatto
b0a0100ad7
Fixed check script: we now see that our C backend isn't bug-free...
2011-04-27 10:52:07 +02:00
Gwenal Delaval
70e2ce08a2
Correction of check script
2011-04-20 12:28:38 +02:00
Gwenal Delaval
eb164f4268
More complete check script
...
Added options to check scrit:
test of boolean pass, deadcode, tomato
added caml compilation test
2011-04-20 12:28:37 +02:00
Léonard Gérard
46ed02416b
Convolutions and pip working.
2011-03-23 16:53:01 +01:00
Cédric Pasteur
2fdf2855d3
Added a new truncated select operator
...
a[>e<] returns the element in the array at index
e, a[0] if e < 0 and a[n-1] if e >= n
2011-03-22 22:12:59 +01:00
Cédric Pasteur
99eeacbceb
Added mapi iterator
...
The last argument of the iterated function is the
index of the element in the array.
2011-03-22 09:28:41 +01:00
Léonard Gérard
eb150fada8
Goal image filters
2011-03-21 22:24:37 +01:00
Léonard Gérard
36061f4518
fixed tests to the new iterator syntax.
...
Changed (( and )) to (< and >) since it's very common to write )) !
2011-03-21 22:24:37 +01:00
Léonard Gérard
b913edcd5e
Decade alpha1
...
On the road to beta is the new Minils AST, for now :
* Heptagon and Obc AST changes,
* Java code generation,
* Recursives Qualnames,
* Various bug fixes,
* Added partial application for iterators,
For instance:
... = map<<n>> (f<<se>>)((t1, t1'))(t2, t3)
is translated to:
for(int i =...)
... = f(t1, t1', t2[i], t3[i])
2011-03-21 22:24:36 +01:00
Léonard Gérard
6b720e6c23
Merge branch 'java'
...
Conflicts:
.gitignore
compiler/global/global_printer.ml
compiler/main/mls2obc.ml
2011-03-21 22:21:00 +01:00
Léonard Gérard
b8b16a7355
blop
2011-03-21 17:41:00 +01:00
Léonard Gérard
6428ff81f0
array1 testing.
2011-03-21 17:41:00 +01:00
Léonard Gérard
cab8bb706e
backport from async.
2011-03-09 00:06:36 +01:00
Léonard Gérard
159bab2a55
async constants.
2011-03-08 13:41:28 +01:00
Léonard Gérard
86f743318b
Fixes and basic Java main.
2011-02-14 15:21:57 +01:00
Léonard Gérard
d9ed1de9c5
java exemple
2011-02-07 14:25:57 +01:00
Léonard Gérard
8f4411e145
Recursives Qualnames.
...
In order to have a correct handling of inner classes in Java, and to prepare for modules inside modules.
2011-02-07 14:24:17 +01:00
Léonard Gérard
09419a77a5
again
2011-01-24 16:09:28 +01:00
Léonard Gérard
82250b7536
check cleaned up.
2011-01-12 16:08:33 +01:00
Léonard Gérard
a832cc5c25
Small clocking test
2011-01-05 15:50:01 +01:00
Léonard Gérard
1ed4941101
Cleaner check.
2011-01-05 15:48:09 +01:00
Léonard Gérard
c2d172af48
check changes.
2010-12-15 23:41:46 +01:00
Léonard Gérard
207de4d6e7
Added some tests.
2010-12-15 11:26:30 +01:00
Léonard Gérard
bdcdbddb09
Added initialization bad tests and correct good/t1
2010-10-08 14:53:24 +02:00
Léonard Gérard
9e06021b6d
Corrected good tests to pass initialization check.
2010-10-08 14:38:33 +02:00
Cédric Pasteur
9743bced77
added another example
2010-09-13 10:44:35 +02:00
Léonard Gérard
aa3923cb56
Small 'check' cosmetic.
...
debugger_script updated.
2010-09-13 01:16:37 +02:00
Léonard Gérard
c4a926f489
Correct Mapfold !! Or at least much more than before.
...
Still not sure whether the notion of main_nodes is correct.
A parametrized node not used right in the module gets removed.
Is that the wanted behaviour ?
2010-08-24 11:07:05 +02:00
Adrien Guatto
fb678481ce
Test-case for case-local name clashes
2010-08-20 11:27:16 +02:00
Léonard Gérard
9860e02f53
Small test for statics, params and consts.
2010-08-18 10:14:20 +02:00
Léonard Gérard
a9066fc1f9
$id$ removed.
2010-08-17 23:30:27 +02:00
Adrien Guatto
0bca1e210b
New test with automata and arrays
2010-08-17 15:31:39 +02:00
Cédric Pasteur
8f4220e08d
Made Eupdate dynamic
...
Modifying an array with
[ a with [i] = v ]
should expected a dynamic (not static) value
for i (nothing happens if i is in the wrong range).
This is the same behaviour as in Scade and it is
useful eg to modify an array in a foldi.
2010-07-28 12:34:07 +02:00
Cédric Pasteur
d3fea3aad3
Added test for alias types
2010-07-27 09:29:20 +02:00
Cédric Pasteur
6c8a83f8c4
Added test for foldi
2010-07-26 09:34:29 +02:00
Cédric Pasteur
493f49fe04
Added iterator fusion
...
For now it only deals with maps but it can be
easily extended. See test/good/itfusion.ept for
examples of sequences that can be optimised.
2010-07-21 17:19:51 +02:00
Léonard Gérard
5e737d0094
location change. Heptc works with menhir.
2010-07-21 15:15:57 +02:00
Adrien Guatto
312f8085ce
Test runner: fixed missing C99 option
2010-07-16 12:13:40 +02:00
Adrien Guatto
b5ba524c3e
Test runner: bug-fixes and updates
2010-07-16 11:19:56 +02:00
Cédric Pasteur
66078effbd
Added support for tuples in normalize
...
- (v1, v2, ... ) fby (e1, e2, ...) is translated to
(v1 fby e1, v2 fby e2, ...)
This has made the code even more complex. This will
need to be refactored at some point.
2010-07-15 17:58:32 +02:00
Cédric Pasteur
c8fb0a03dd
Removed test for controllables
2010-07-15 13:23:55 +02:00
Cédric Pasteur
a158977188
Fix examples with changes in lexer
2010-07-15 13:22:42 +02:00
Cédric Pasteur
9e7c013fe2
Completion_mapfold
...
- Added it_gather combinator to create simply
a version of an iterating function using a gather
to combine accumulator values
Completion_mapfold and every_mapfold seems to work
2010-07-09 13:27:06 +02:00
Cédric Pasteur
87cb705fcb
Added some tests file
...
- Arrays, parametrized nodes
- hierarchie.ept is a node with nested automaton
(generated a lot of variables, good test for
performance)
2010-07-09 10:35:54 +02:00
Adrien Guatto
6b4881ccd0
Revamped testing framework
2010-07-02 16:03:04 +02:00
Cédric Pasteur
5f1b63b33a
Fix bug with locations
2010-06-24 04:55:15 +02:00
Léonard Gérard
12251f960e
Add lib/pervasives.epi, tests, tools
2010-06-21 12:11:06 +02:00