Commit graph

803 commits

Author SHA1 Message Date
Léonard Gérard
f238f39f4d New reset pass, without switch ! 2010-12-15 23:41:46 +01:00
Léonard Gérard
9e431c0cc7 remove TODO. 2010-12-15 18:35:45 +01:00
Léonard Gérard
e174151d37 Unclutter ident printing. 2010-12-15 11:27:19 +01:00
Léonard Gérard
207de4d6e7 Added some tests. 2010-12-15 11:26:30 +01:00
Léonard Gérard
93f2c8bceb debugger_script updated. 2010-12-15 11:26:29 +01:00
Léonard Gérard
ac6dab15ee Switch removing. 2010-12-15 11:26:29 +01:00
Léonard Gérard
ac9f805446 Refactoring. 2010-12-15 11:26:29 +01:00
Léonard Gérard
7d3b6a4679 Bug fix Cgen 2010-12-15 11:26:29 +01:00
Léonard Gérard
2ae809c971 Fresh vars, and ident refactoring.
Idents.enter_node should be called when entering a node, it is done automagically by the mapfold unless you call directly Hept_mapfold.node_dec.
2010-12-15 11:26:29 +01:00
Léonard Gérard
83feda2afb And the awaited block.ml ! 2010-12-10 16:46:36 +01:00
Cédric Pasteur
ee566aba50 Hept_parsetree_mapfold should also visit type_dec
This fixes a problem with test/good/type_alias.ept
and t8.ept.
2010-12-10 10:18:05 +01:00
Léonard Gérard
b85691be35 Bug fix in reset, loosing equations. 2010-12-10 00:42:49 +01:00
Léonard Gérard
e39a0484ff Add 'block' to Heptagon. 2010-12-10 00:42:49 +01:00
Léonard Gérard
82caa5a83d Adding a base clock in the Hept AST. 2010-12-10 00:39:25 +01:00
Léonard Gérard
5a62ca5335 Fix typing
defnames were not rightly handled in [reset] blocks
2010-12-10 00:39:25 +01:00
Léonard Gérard
9a69c30dc5 Clock annotation in Hept AST 2010-12-10 00:39:25 +01:00
Léonard Gérard
9998d7ea39 Added a unit type. Tunit. 2010-12-10 00:39:25 +01:00
Gwenal Delaval
ed2642f847 Added controllables in every pass 2010-12-08 17:32:24 +01:00
Gwenal Delaval
b7cba3315a Compiler option -nocaus
Added a compiler option de-activating causality analysis
2010-12-08 17:31:16 +01:00
gwenael delaval
4d5cc091d7 Add "with" syntax
Add with syntax on AST, parsetrees, parsers and printers
2010-12-06 18:24:04 +01:00
Cédric Pasteur
0bb84532b9 Added a new static scoping pass
This pass transforms exps that should be static 
to Econst se. The regular scoping then only has
to check this case.

The conversion is done in a single traversal of
the AST (unlike the old solution).
2010-11-20 17:39:24 +01:00
Cédric Pasteur
b5fb821a4c Fix hept_parsetree_mpafold
It had never been used so it wasn't correct. 
Added some missing cases.
2010-11-20 17:31:55 +01:00
Adrien Guatto
405edd8649 Smart(er) heptc-c.sh script 2010-11-10 15:46:38 +01:00
Adrien Guatto
5c8e1a47fe Tomato: stop trying to be smart about tuples
Removed Elimtuples module.
2010-11-10 15:46:32 +01:00
Adrien Guatto
6153d1f65f Tomato: more readable generated identifiers.
When generating a new equation name for an equivalence class,
we now only use the names from the original program if possible.
2010-11-10 15:45:41 +01:00
Adrien Guatto
c7b83b7381 Fixed comparison functions which were blatantly wrong.
Previous versions weren't antisymmetric.
2010-11-10 15:45:41 +01:00
Léonard Gérard
684f3337f8 Removed unused arguments in mls2obc 2010-11-05 16:27:45 +01:00
Léonard Gérard
3e2fb0b4b1 Rename [lhs] to [pattern] in obc
lhs was verrrry bad.
2010-11-05 16:27:44 +01:00
Léonard Gérard
a273170a31 Allow "type t = A" instead of forcing "A | ..." 2010-11-04 18:10:20 +01:00
Léonard Gérard
f2bc010135 Much better error msg when typing merge and when. 2010-11-04 18:09:32 +01:00
Léonard Gérard
7013a01f83 clock fix. 2010-11-04 18:08:40 +01:00
Léonard Gérard
26b30b9bac Small code comments. 2010-11-04 18:07:17 +01:00
Léonard Gérard
7b4f34a521 Cgen only stdbool.h booleans no more TRUE and FALSE. 2010-11-04 18:06:11 +01:00
Léonard Gérard
b57676eee3 Added 'when', 'merge' to the parsing and scoping. 2010-11-02 11:32:40 +01:00
Léonard Gérard
c677738903 enforce_style.sh now deals with parsing files. 2010-11-02 11:31:59 +01:00
Léonard Gérard
a22f7216f2 Added when and merge to heptagon. Need tests !
Clocking is still done in minils since it is way simpler.
2010-11-01 01:05:37 +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
9414fdc5a8 Initialization with pretty errors. 2010-10-08 14:40:08 +02:00
Léonard Gérard
9e06021b6d Corrected good tests to pass initialization check. 2010-10-08 14:38:33 +02:00
Léonard Gérard
ea4ef2583b Fix print location.
It was not respecting boxes by using a \n instead of a @\n.
2010-10-08 14:34:31 +02:00
Léonard Gérard
afcd53cebb Initialization Small big bug fix. 2010-10-08 10:46:09 +02:00
Léonard Gérard
99cf52a10f Initialization reworked. Old good tests are now bad ! (they were bad in fact). 2010-10-07 20:19:03 +02:00
Léonard Gérard
c47e371a11 assigned a TODO in obc. 2010-10-07 20:19:02 +02:00
Léonard Gérard
ff2b512600 Tidying typing up. 2010-10-07 20:19:02 +02:00
Adrien Guatto
f15a6c528e Better syntax highlighting for VHDL and Heptagon. 2010-10-04 00:36:36 +02:00
Adrien Guatto
6ff8ed993f Switched back to plain strings for some compiler options.
To be consistent or to be convenient, that is the question.
2010-10-04 00:35:12 +02:00
Adrien Guatto
381e4e84f7 Csubst: added missing recursive call for array indexes. 2010-10-02 13:22:04 +02:00
Adrien Guatto
7b6690d443 Cgen: proper assignment from structs. 2010-10-02 13:19:21 +02:00
Adrien Guatto
0ce7b4efb0 Cgen: proper assignments from constant variables. 2010-10-02 13:17:12 +02:00
Adrien Guatto
412fd1f81b New operator: modulo (written (%))! 2010-10-02 13:01:35 +02:00