Cédric Pasteur
a52e80bcad
Fixed some TODOs
2011-07-21 11:54:52 +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
d20932e13c
Better error message for argument errors
...
Print a message to show the problem is with the
arguments and not the expression itself, by
catching the exception earlier.
2011-07-21 10:50:51 +02:00
Cédric Pasteur
e11bf08dae
Better error message for array type errors
...
If an array of the wrong size is given, give an
error with the full types instead of the bare
constraint.
2011-07-21 10:26:34 +02:00
Cédric Pasteur
0a372672e0
Fixed bug with type alias
...
We should always unalias a type if we're expecting
an array type.
2011-07-21 09:13:49 +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
Léonard Gérard
250ccb8e23
Fix iterators obc pattern types
2011-07-08 17:22:58 +02:00
Léonard Gérard
57155b45e2
remove the ; _ } from ocaml 3.12 ...
2011-07-08 15:31:17 +02:00
Adrien Guatto
1e95cc4098
patch tomato wrong merge.
2011-07-08 15:27:17 +02:00
Léonard Gérard
13955147ca
patch java wrong merge.
2011-07-08 15:25:00 +02:00
Adrien Guatto
40e64b305d
Tomato: disable debug messages by default
2011-07-08 11:56:38 +02:00
Adrien Guatto
7d9e31a83b
Tomato checking in check.sh
2011-07-08 11:56:38 +02:00
Adrien Guatto
d1c2789574
Tomato: properly handle n-ary functions.
2011-07-08 11:56:38 +02:00
Adrien Guatto
8f0ef3a256
Properly use clocking information in corner cases.
2011-07-08 11:56:38 +02:00
Adrien Guatto
2283fcdfaa
Properly handle fused outputs.
2011-07-08 11:56:38 +02:00
Adrien Guatto
3657018861
Tomato: finer equivalence classes for Eapp and
...
Eiterator when a reset variable is present.
2011-07-08 11:56:38 +02:00
Adrien Guatto
3c5bb4e8b7
Tomato working with clocks and when.
2011-07-08 11:56:37 +02:00
Adrien Guatto
891174d73c
All-new and fresh tomato!
...
Not working ATM:
* tuples
* when
2011-07-08 11:56:37 +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
ab3823874c
Feature: Java main will give bin args as static params to the main.
...
consider having a main node like this one:
node main<<i : int; b : bool>> () returns...
Then if to call the generated program, you'll need ot give an int and a bool.
Furthermore, if you give an additional arg, it'll be used as the wanted
iteration number.
Conflicts:
compiler/obc/java/java_main.ml
2011-07-08 11:26:05 +02:00
Léonard Gérard
4ac4347dc8
Add an error (in java main) when the specified main node is incorrect.
...
Conflicts:
compiler/obc/java/java_main.ml
2011-07-08 11:18:39 +02:00
Léonard Gérard
1c428e7fe1
Forgot to remove the comments around static scoping for interfaces.
2011-07-08 11:18:39 +02:00
Brice Gelineau
10115684d9
bugfix for reset calls in C
2011-07-08 10:51:10 +02:00
Léonard Gérard
f40dc66e57
Patch typing.ml from brice email 27/06/11.
2011-07-07 16:21:48 +02:00
Brice Gelineau
b6aecf9869
Bugfix for reset calls in C
2011-07-07 16:18:25 +02:00
Brice Gelineau
42c2936040
Bugfix for the clocking analysis of iterators
2011-07-06 15:56:56 +02:00
Adrien Guatto
cedcabfbc4
Fix memory normalization: the correct clock was
...
missing.
2011-07-06 11:50:02 +02:00
Cédric Pasteur
34b65c1234
Do not generate for loops
...
These loops are already present in the Obc code.
2011-07-05 18:08:21 +02:00
Cédric Pasteur
bb6b9868b0
Use the variable type to add or not an indirection
2011-07-05 17:46:43 +02:00
Léonard Gérard
5837f3906f
Multidimensional iterators in java.
2011-06-28 17:50:42 +02:00
Léonard Gérard
f2ca353cac
Pour que ca marche sur clocked_inputs (cela vient de memalloc)
2011-06-28 17:50:42 +02:00
Léonard Gérard
c5fbcbe765
removing white spaces
2011-06-28 17:50:42 +02:00
Brice Gelineau
c70d34ec06
Preliminary version of multidimensional iterators.
2011-06-28 17:50:42 +02:00
Léonard Gérard
83b0182874
Merge branch 'clocked_inputs' into decade
...
Conflicts:
compiler/heptagon/analysis/typing.ml
compiler/heptagon/parsing/hept_scoping.ml
compiler/heptagon/parsing/hept_static_scoping.ml
compiler/main/mls2obc.ml
compiler/obc/c/cmain.ml
2011-06-28 14:46:43 +02:00
Cédric Pasteur
e754493364
Fixed stateful bit for iterated nodes
2011-06-23 10:51:25 +02:00
Léonard Gérard
108981c0eb
Static constraints in the source. Equal removed
...
( = ) in pervasives is a stub, it will be typed in a polymorphic way.
This is necessary to have a simple way to transform exp into a static_exp
even when there is the = operator.
2011-06-09 14:53:40 +02:00
Léonard Gérard
c3382e4284
Small present bugfix.
2011-06-09 14:40:31 +02:00
Léonard Gérard
b60e8ab4bb
Better automata variable names.
2011-06-09 14:40:31 +02:00
Léonard Gérard
46ed39b7b3
Remove some warnings.
2011-06-09 14:40:31 +02:00
Cédric Pasteur
f45e30d207
Yet another special case for iterators
2011-06-07 10:49:36 +02:00
Adrien Guatto
4794045208
Reworked Obc AST: from right patterns to extvalues.
...
I introduced a notion of extended values in Obc expressions,
replacing the Epattern constructor. Patterns may now only
occur at their rightful place, on the left of an assignment.
This change allows to index global constant arrays.
2011-05-30 16:25:00 +02:00
Brice Gelineau
938e8897b2
n-ary Sarray_power Earray_fill
2011-05-26 18:43:30 +02:00
Léonard Gérard
fe74030f78
Fix clocking of iterators.
2011-05-26 16:08:59 +02:00
Léonard Gérard
b73e6502a6
resets are now without constraint.
2011-05-26 15:56:59 +02:00
Léonard Gérard
d7d7552be4
Fix printing and parsing of clocks
2011-05-26 15:56:59 +02:00
Léonard Gérard
fd00f099f5
correct reset and level clock
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
fbfa6eda1a
Add Ewhen to the minils ast, And clocking of iterators.
...
Ewhen is now the only case of possible recursion for minils exps.
This add was motivated by equations like :
(y,z) = f(x) when c
This equation to be correctly normalized in minils before needed :
y',z' = f(x)
y = y' when c
z = z' when c
But this new variables where needless since the final translation of when c
is the identity.
2011-05-26 15:56:59 +02:00
Léonard Gérard
87dc76f113
Code formating fixes (typos, tabs, spaces at endofline,...)
2011-05-26 15:56:59 +02:00
Léonard Gérard
efcb2b01bb
Fix global_printer to follow Format conventions.
2011-05-26 15:56:59 +02:00