Gwenaël Delaval
85bbe21d6c
Sigali pass into compiler + added a_id field to applications
...
- Added "z3z" target language, calling sigali code generation
- a_id is application id, so as to identify node applications; added
to Minils AST. a_id is given on hept2mls pass.
This is needed for the controller execution from controller synthesis.
2011-04-20 12:47:28 +02:00
Gwenaël Delaval
da37fd8e58
Sigali code generation
...
Sigali AST and Sigalimain module for sigali code generation
from normalized and Boolean minils program
2011-04-20 12:28:38 +02:00
Gwenaël
ac9715ad90
Correction of Boolean pass
...
Correction of Boolean pass: correct translation of variable declarations,
including full clock translation (in two passes for variable declarations:
one to build the env, one for clock translation).
2011-04-20 12:28:38 +02:00
Gwenal Delaval
70e2ce08a2
Correction of check script
2011-04-20 12:28:38 +02:00
Gwenal Delaval
0f6ddb739b
Correction of Boolean pass
...
Corrections to handle modifications on AST
(fresh/gen_fresh on idents, Tunit type,
e_base_ck = Cbase everywhere)
2011-04-20 12:28:37 +02:00
Gwenal Delaval
eb164f4268
More complete check script
...
Added options to check scrit:
test of boolean pass, deadcode, tomato
added caml compilation test
2011-04-20 12:28:37 +02:00
Gwenal Delaval
4e267d82c6
Boolean transformation pass (translate every enumeration type to boolean tuples)
2011-04-20 12:28:37 +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
Cédric Pasteur
747c2aaad5
New convention: 100 columns per line
...
Please follow this rule
2011-04-14 10:57:24 +02:00
Cédric Pasteur
e2e8a93656
Hept2mls ported and very simplified
...
Does not compile yet
2011-04-14 10:00:06 +02:00
Cédric Pasteur
d2c4f09aa2
Indentation fixes + remove unnecessary code
2011-04-14 10:00:06 +02:00
Léonard Gérard
12bd4e9c45
Types.
2011-04-14 09:23:38 +02:00
Cédric Pasteur
6adb45c3ad
Normalize in Heptagon compiles
2011-04-13 16:21:28 +02:00
Cédric Pasteur
611c94bbbd
Itfusion moved to heptagon
2011-04-13 15:10:15 +02:00
Cédric Pasteur
cbf92beba2
First try at a normalization in Heptagon
...
I can't see if it compiles yet
2011-04-13 14:40:06 +02:00
Cédric Pasteur
2c7b609d2e
Forme normale Minils
2011-04-12 14:07:05 +02:00
Léonard Gérard
0fc0c3ba5b
Java main pretty print
2011-03-23 20:31:26 +01:00
Léonard Gérard
9714cf0be9
Java fix, initialization order
2011-03-23 18:24:25 +01:00
Léonard Gérard
46ed02416b
Convolutions and pip working.
2011-03-23 16:53:01 +01:00
Léonard Gérard
0aef6fcb5b
pattern_of_idx in right order.
...
Probably array_elt_of_exp is also wrong.
2011-03-23 16:52:32 +01:00
Cédric Pasteur
2fdf2855d3
Added a new truncated select operator
...
a[>e<] returns the element in the array at index
e, a[0] if e < 0 and a[n-1] if e >= n
2011-03-22 22:12:59 +01:00
Cédric Pasteur
99eeacbceb
Added mapi iterator
...
The last argument of the iterated function is the
index of the element in the array.
2011-03-22 09:28:41 +01:00
Léonard Gérard
eb150fada8
Goal image filters
2011-03-21 22:24:37 +01:00
Léonard Gérard
36061f4518
fixed tests to the new iterator syntax.
...
Changed (( and )) to (< and >) since it's very common to write )) !
2011-03-21 22:24:37 +01:00
Léonard Gérard
b913edcd5e
Decade alpha1
...
On the road to beta is the new Minils AST, for now :
* Heptagon and Obc AST changes,
* Java code generation,
* Recursives Qualnames,
* Various bug fixes,
* Added partial application for iterators,
For instance:
... = map<<n>> (f<<se>>)((t1, t1'))(t2, t3)
is translated to:
for(int i =...)
... = f(t1, t1', t2[i], t3[i])
2011-03-21 22:24:36 +01:00
Léonard Gérard
6b720e6c23
Merge branch 'java'
...
Conflicts:
.gitignore
compiler/global/global_printer.ml
compiler/main/mls2obc.ml
2011-03-21 22:21:00 +01:00
Léonard Gérard
b8b16a7355
blop
2011-03-21 17:41:00 +01:00
Léonard Gérard
6428ff81f0
array1 testing.
2011-03-21 17:41:00 +01:00