Commit graph

113 commits

Author SHA1 Message Date
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