Commit graph

464 commits

Author SHA1 Message Date
Cédric Pasteur
2a9c72154c Fixed renaming of var_dec in Switch
Instead of creating new var_decs for renamed variables,
just copy the one from the original var to 
avoid losing other information
2011-05-05 17:57:57 +02:00
Cédric Pasteur
c8055cd1ff Fixed bugs with static records in C generation 2011-05-03 13:21:27 +02:00
Cédric Pasteur
b47dc918ec Fixed bug with loading modules
Do not forget to remember loaded modules
2011-05-02 14:27:42 +02:00
Cédric Pasteur
fd347cb4e4 Fix generation of bounds check expression 2011-05-02 11:24:12 +02:00
Cédric Pasteur
f110727568 Better fix for Normalize_mem
We have to modify the var_dec and arg as they may
have other fields that need to be kept
2011-05-02 11:20:37 +02:00
Léonard Gérard
d2eeeee73f fix reset. 2011-04-29 16:24:08 +02:00
Cédric Pasteur
a533b0b3f4 Proper fix for init of outputs with last 2011-04-29 15:21:12 +02:00
Cédric Pasteur
29d3c75d55 Proper fix for the problem of scoping of Svar 2011-04-29 15:21:12 +02:00
Cédric Pasteur
59c8106e46 Also use idents for Ewhen in Heptagon 2011-04-29 15:21:12 +02:00
Cédric Pasteur
aae38a7844 Use idents for Emerge in Heptagon 2011-04-29 15:21:12 +02:00
Léonard Gérard
670d8962df add useful files 2011-04-29 15:17:01 +02:00
Léonard Gérard
9fa8e7e6ff mk_equation in hept computes the stateful field. 2011-04-29 15:04:47 +02:00
Léonard Gérard
219c4dbf8d cosmetic 2011-04-29 15:04:47 +02:00
Adrien Guatto
10418197c8 Initial support for return-less external functions.
The compiler still does not support unsafe functions that well. For example, putting an assert()/exit() in an automaton's state does not work correctly.
2011-04-28 15:24:35 +02:00
Cédric Pasteur
bed729b448 Fixed typing of const def
Like values, the typed version should be put in
the environment.
2011-04-28 09:28:07 +02:00
Léonard Gérard
ba1ff2c06d Fix qualify Svar 2011-04-27 16:37:45 +02:00
Adrien Guatto
aa1041319f C backend: do not use memory structs for combinatorial main() functions. 2011-04-27 15:29:33 +02:00
Léonard Gérard
f532ccc84c really fix unification 2011-04-27 15:16:17 +02:00
Léonard Gérard
b8ee46d58f fix normalize_mem 2011-04-27 14:29:21 +02:00
Adrien Guatto
00cb203dd9 Revert "C generation: fixed struct field name in step() call."
This reverts commit fc920d88ea.
2011-04-27 14:02:50 +02:00
Adrien Guatto
fc920d88ea C generation: fixed struct field name in step() call. 2011-04-27 11:53:44 +02:00
Cédric Pasteur
014bc19ab2 Fixed bug in init analysis 2011-04-26 12:43:03 +02:00
Cédric Pasteur
401aaeeb89 Type declarations should also be typed
This is necessary so that the static expressions
appearing in those types are correctly typed.
2011-04-21 16:29:24 +02:00
Léonard Gérard
6b86b86e9d really fix normalize_mem.
in the old fix was missing the renaming, and there was wrong equations
order :
f () returns x
[here rename x by mem_x]
mem_x = fby ...
x = mem_x

so the simplest was :
f () returns out_x
var x;
[ nothing to do]
out_x = x
x = fby ...

pay attention to the order of equations since we are after the
scheduling..
probably it should be done before the scheduling anyway ?
2011-04-20 20:47:06 +02:00
Léonard Gérard
5fb518d8ed Java bugfix 2011-04-20 17:33:50 +02:00
Léonard Gérard
73abbad1f9 small java module fix 2011-04-20 17:24:09 +02:00
Cédric Pasteur
2757e7c1bf Fixed normalized_mem
It inverted the order of equations
2011-04-20 16:23:44 +02:00
Léonard Gérard
d6240e1c67 100 and java scalarized 2011-04-19 18:45:56 +02:00
Cédric Pasteur
802178fb28 Added a pass to normalize memories
This adds a copy for outputs that are also
memories.
2011-04-19 17:19:40 +02:00
Cédric Pasteur
845d084658 Preserve the order of type and classes definitions 2011-04-19 13:08:35 +02:00
Cédric Pasteur
073ccc2603 Better handling of static arrays 2011-04-19 12:58:41 +02:00
Leonard Gerard
220db42076 java readded 2011-04-19 11:39:37 +02:00
Cédric Pasteur
740114764c Fixed stupid bug in the order of args 2011-04-19 10:38:48 +02:00
Leonard Gerard
3618ccc8ed parser fix 2011-04-19 10:14:19 +02:00
Cédric Pasteur
a2303ec7e1 Other compile fixes
The java backend is disabled temporarily
2011-04-19 09:49:00 +02:00
Cédric Pasteur
3c8fc39745 Fix C backend with new obc ast 2011-04-19 09:23:52 +02:00
Cédric Pasteur
028dfe0468 Fix for nested if and merge with tuples 2011-04-19 09:04:36 +02:00
Leonard Gerard
8da5ce4648 no order in declarations 2011-04-18 19:20:35 +02:00
Cédric Pasteur
03f0d5d89a Fixed stupid bug #1 2011-04-18 17:14:50 +02:00
Leonard Gerard
c0602c6df6 etuple removed 2011-04-18 16:09:07 +02:00
Leonard Gerard
5c831db40b removed warning 9 2011-04-18 15:47:25 +02:00
Cédric Pasteur
c6aa63b444 Heptc compiles again
AFor now expects expressions instead of static exps
2011-04-18 15:38:42 +02:00
Cédric Pasteur
c6991977a0 Missing case in normalize
Distribute also static tuples
2011-04-18 09:52:03 +02:00
Léonard Gérard
5d2f7dfa85 jeudi soir. still on mls2obc. 2011-04-14 20:14:21 +02:00
Cédric Pasteur
f57d7f1589 Correct translation for Eupdate and Eupdate_field
As the language is SSA, we should assign each 
element only once.
2011-04-14 15:14:41 +02:00
Cédric Pasteur
c23b9256f0 Also forgot to re-enable scalarize 2011-04-14 14:18:24 +02:00
Cédric Pasteur
975418ffff Missing part from last commit 2011-04-14 13:56:24 +02:00
Cédric Pasteur
57bc9f210b Added a generic onfiguration for backends
Each backend gives a function used to 
enable/disable passes, executed before the
beginning of the compilation
2011-04-14 13:53:30 +02:00
Cédric Pasteur
2f346f873c Control optimization as a pass on Obc
There is now a obc_compiler.ml file, as in hept
and minils.
2011-04-14 11:53:39 +02:00
Cédric Pasteur
6f0c9af006 First port of mls2obc
Does not compile yet
2011-04-14 11:17:12 +02:00