Commit Graph

576 Commits

Author SHA1 Message Date
Adrien Guatto a15276f053 Compile with proper include to pervasives.h. 2011-05-12 16:32:52 +02:00
Gwenal Delaval acad16b98a Graphical simulator hepts
Added graphical simulator hepts

Added option -hepts to the compiler: this option formats the output of the simulation loop
to fit with hepts (currently working only on C target code). Typically, suppresses all
"decoration" output, like input or output names, and prints output on single lines.

Currently not implemented in hepts: array types.

Usage: to simulate the node Modulename.f:

heptc -target c -s f -hepts modulename.ept
gcc modulename_c/*.c -o ./f_sim
hepts -mod Modulename -node f -exec ./f_sim
2011-05-12 10:08:13 +02:00
Gwenal Delaval bf4d80c5a3 Correction of Mls_compare for new AST 2011-05-11 14:25:45 +02:00
Leonard Gerard a9aa794b18 Reset optim 2011-05-10 20:52:32 +02:00
Leonard Gerard 75b7ceab5a Allows easy debugging printing of Envs. 2011-05-10 20:29:01 +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
Leonard Gerard 09b5e8e54a Rerefixfix switch vd_env 2011-05-10 17:22:24 +02:00
Gwenal Delaval da648254d8 Added type string to pervasives, with string constants in AST 2011-05-10 17:07:17 +02:00
Gwenaël Delaval a1be8130ce Inline pass re-activated 2011-05-10 17:07:16 +02:00
Cédric Pasteur 568dfc59fd Fixed generation of includes in C
The module names must be uncapitalized in includes
2011-05-09 09:50:18 +02:00
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 0256b571f7 Added pervasives C header
It only defines the between function for now
2011-05-03 13:35:13 +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
Adrien Guatto 396457abd8 Added assert() and exit() to pervasives.epi. 2011-04-27 14:48:01 +02:00
Léonard Gérard 0d0d016cba Fix unification of Cbase and Cprod [] 2011-04-27 14:36:23 +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
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
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