Cédric Pasteur
eb85bfd282
Fix for tuple consts in Initialization
...
We also need a skeleton fun for consts as there
can be a const tuple
TODO : do the same in Clocking ??
2010-07-12 10:22:57 +02:00
Cédric Pasteur
89249e8252
Fix for Initialization
...
Make eg 0 -> (pre x + 1) legal. This is a temporary
fix until safe/unsafe functions are correctly handled.
2010-07-12 10:16:16 +02:00
Cédric Pasteur
c5184b5d66
Booleans can be used in a switch
2010-07-12 09:25:36 +02:00
Cédric Pasteur
eb625cd5d7
Fix operator args (some args have become static)
2010-07-12 09:07:57 +02:00
Cédric Pasteur
af0d28fda0
More refactoring of reset
...
Use exp option to store resets instead of introducing
a new type.
2010-07-09 16:05:31 +02:00
Cédric Pasteur
f752f895ce
Reset_mapfold
...
- Also refactored most of the code (why the hell
would anyone use arrays to iterate over lists
with an index ?!?)
2010-07-09 15:28:26 +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
e7bd251b35
Added Global_mapfold and Mls_mapfold
...
- Global_mapfold is used to iterate over types
defined in Types or Signature (the iterators
from Types were moved here)
- Mls_mapfold to iterate over Minils AST (we
do not iterate over clocks yet: is it useful ?)
2010-07-09 11:33:17 +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
Cédric Pasteur
3153a8f241
Add missing cases
2010-07-09 10:28:16 +02:00
Cédric Pasteur
3bf2d82d45
Make sure to run check_type on every
...
Types declared by the user must be checked (this
will also replaced names with the correct longname).
2010-07-09 10:28:09 +02:00
Cédric Pasteur
03b792a220
Fix for scoping
2010-07-09 09:41:29 +02:00
Cédric Pasteur
ad2594ebfa
Cgen compiles
2010-07-09 09:31:12 +02:00
Cédric Pasteur
23e232cd1f
Rewrite Every using Hept_mapfold
2010-07-08 18:13:32 +02:00
Léonard Gérard
000dc91d69
Heptagon and Types mapfold.
2010-07-08 17:41:00 +02:00
Cédric Pasteur
226ddd5c28
Updates for Obc
2010-07-08 17:22:13 +02:00
Cédric Pasteur
b0a5a7f13e
Heptcheck compiles !!
2010-07-08 15:25:26 +02:00
Cédric Pasteur
68ecd0e781
Added consts in the signature of a module
2010-07-08 15:23:13 +02:00
Léonard Gérard
5baa30f7c1
Last refactor ? and hept_mapred shows in !
2010-07-08 15:22:26 +02:00
Cédric Pasteur
0e224bf368
Port Static to recent api changes
2010-07-08 15:21:30 +02:00
Cédric Pasteur
587ed634ea
Updated Obc Ast
2010-07-08 15:21:30 +02:00
Cédric Pasteur
72ee834641
Proposition for improved Obc AST
2010-07-08 15:20:55 +02:00
Cédric Pasteur
3690585710
Added static records in static_exp
2010-07-08 15:20:55 +02:00
Cédric Pasteur
0b253d22db
typing_static_exp should return the static exp
...
We need to return the static exp because we have
to replace constructor with their longname.
2010-07-08 15:20:54 +02:00
Cédric Pasteur
cee9eed24a
Moved sequential/ to obc/
2010-07-08 15:20:25 +02:00
Cédric Pasteur
662e81d810
Add location and type to static exps
2010-07-08 15:20:25 +02:00
Cédric Pasteur
2fd0860ba8
Renamed Scoping and Parsetree
2010-07-08 15:19:04 +02:00
Cédric Pasteur
7ed81a8950
Moved Obc_printer to a separate file
2010-07-08 15:19:04 +02:00
Cédric Pasteur
978313de1e
Moved sequential to compiler/ dir
2010-07-08 15:19:04 +02:00
Cédric Pasteur
24cea56666
Add support for any type of constants
2010-07-08 15:18:08 +02:00
Léonard Gérard
5cc57cd3b0
Static_exps should be in types. field name of ops is a param.
2010-07-08 15:17:08 +02:00
Cédric Pasteur
037f9be664
Remove unused code
2010-07-08 15:16:27 +02:00
Cédric Pasteur
769cb1d881
Updated ast for Static
...
- Static are used for consts in Heptagon and Minils.
For now, node static parameters remain int only
(ie they are type parameters). Do we need more ?
- Also updated Parsetree AST to the recent changes
in API
2010-07-08 15:16:27 +02:00
Cédric Pasteur
c46896ca55
Same api change in Heptagon as in Minils
2010-07-08 15:12:34 +02:00
Léonard Gérard
3cc1652425
Minils and signature tweaked further.
2010-07-08 15:12:02 +02:00
Léonard Gérard
50bd90183d
Good static Constructors names.
2010-07-08 15:10:59 +02:00
Adrien Guatto
ed280669ec
Efields and Etuple are op
2010-07-08 15:04:57 +02:00
Léonard Gérard
d58e83a985
Proposition 1.
2010-07-08 15:04:57 +02:00
Adrien Guatto
3698105ccf
C back-end: yet another fix for array literals
2010-07-08 12:49:14 +02:00
Adrien Guatto
7918332353
Temporary fix for array literals.
2010-07-08 12:44:34 +02:00
Cédric Pasteur
d594ace895
This case is unused
2010-07-07 17:03:36 +02:00
Adrien Guatto
0712378133
Fixed output structure allocation in C backend
2010-07-07 14:44:43 +02:00
Cédric Pasteur
c123000eef
Always generate a f_out struct
...
Generate it even if the node has no output. It
should be noted that it is impossible to call
a node without an output in an Heptagon program.
This is only useful to provide a simple interface
eg for the generation of main().
2010-07-07 09:58:23 +02:00
Adrien Guatto
0fbaa0217b
Fixed missing include dir in minils/_tags
2010-07-06 13:35:11 +02:00
Léonard Gérard
65c12884bd
SConst -> Sconst
2010-07-06 11:12:14 +02:00
Léonard Gérard
075cab202a
_tags fix.
2010-07-05 16:10:00 +02:00
Adrien Guatto
3dfdf680ee
myocamlbuild.ml fix for bytecode
2010-07-05 15:15:24 +02:00
Adrien Guatto
2d8e02d844
Fix: typo size_constr -> size_constrs
2010-07-05 12:09:35 +02:00
Adrien Guatto
6b4881ccd0
Revamped testing framework
2010-07-02 16:03:04 +02:00
Adrien Guatto
1113fd7ec1
Yet another refactoring fix
2010-07-02 15:45:50 +02:00