Léonard Gérard
|
4e3c58bb40
|
Allow symbolic static_exp eval.
|
2011-11-18 12:32:36 +01:00 |
|
Léonard Gérard
|
bdd85f5f81
|
mapfold over var_ident.
|
2011-11-18 12:32:36 +01:00 |
|
Léonard Gérard
|
d5858d6dd2
|
Optimize static evaluation
It greatly reduce the amount of constraints kept.
Indeed, all the constraints : x = x, x /y = x/y, etc
were kept when x and y were local params.
|
2011-11-18 12:32:36 +01:00 |
|
Cédric Pasteur
|
cf1e79efc8
|
Type signature of all nodes
|
2011-11-18 10:03:54 +01:00 |
|
Cédric Pasteur
|
1a28ed96e8
|
Improvement for normalize memories
Only create necessary copies (for outputs
and recursive registers).
|
2011-11-16 16:07:36 +01:00 |
|
Cédric Pasteur
|
8644982593
|
Fixed some bugs in the configure
Check that ocamlc and ocamlfind point to the
same stdlib dir.
|
2011-11-14 10:52:28 +01:00 |
|
Adrien Guatto
|
1a9dc17618
|
Fixed clocking annotations.
1. Transmit annotations to extvaluese in Hept2mls.
2. Handle a pre-existing w_ck when clocking extvalues.
|
2011-11-10 15:36:54 +01:00 |
|
Léonard Gérard
|
0222d11b2d
|
Do not introduce useless variable in [reset every]
|
2011-11-03 00:46:13 +01:00 |
|
Léonard Gérard
|
dfc0077859
|
permits to use = instead of returns
|
2011-11-03 00:46:04 +01:00 |
|
Léonard Gérard
|
abdf93c8c2
|
inlining corrected
|
2011-11-03 00:45:43 +01:00 |
|
Léonard Gérard
|
3e64635f95
|
optimize the control at the end to maximize profit
Indeed, some examples showed that memory allocation could trigger a profit-full deadcode removal for the control. See Downscaler.down avec -flatten.
|
2011-11-03 00:43:36 +01:00 |
|
Léonard Gérard
|
17598a3206
|
Correct inlining, which was aliasing clocks.
|
2011-11-03 00:41:29 +01:00 |
|
Léonard Gérard
|
76109b553a
|
Add -O option to enable optims.
|
2011-11-02 17:23:23 +01:00 |
|
Léonard Gérard
|
919eaa72e1
|
Fix floating point printing.
|
2011-11-02 16:08:51 +01:00 |
|
Léonard Gérard
|
50487f9296
|
Fix java main to deal with unit return type.
|
2011-11-02 16:07:19 +01:00 |
|
Léonard Gérard
|
04263a126b
|
Correct small bug in java initialized arrays.
|
2011-11-02 16:04:47 +01:00 |
|
Léonard Gérard
|
33021aaa90
|
Print stateful in heptagon.
Conflicts:
compiler/heptagon/hept_printer.ml
|
2011-11-02 13:15:33 +01:00 |
|
Cédric Pasteur
|
6ba0e7b2b3
|
Don't remove local variables in causality
A dependency between two variables can be caused
by a local variable
|
2011-10-26 16:14:02 +02:00 |
|
Léonard Gérard
|
ffe2b23a82
|
new sheduler by default
|
2011-10-23 17:42:26 +02:00 |
|
Cédric Pasteur
|
f4aafa10d6
|
Added a build system for Heptagon
./configure
make
make install
|
2011-10-20 18:06:41 +02:00 |
|
Léonard Gérard
|
81ad14ab7b
|
changed interf_schedule to use clocks correctly
|
2011-10-20 16:52:50 +02:00 |
|
Cédric Pasteur
|
21433f6416
|
Only do one copy for two recursive registers
|
2011-10-20 09:16:51 +02:00 |
|
Cédric Pasteur
|
72cac326a8
|
Fixed normalization of fby
We should normalize not only outputs but also
other fbys to generate correct code. The test shows
a program that was compiled incorrectly.
|
2011-10-19 16:31:40 +02:00 |
|
Cédric Pasteur
|
a31715ecde
|
Proper fix for causality
This time it should work in all cases
|
2011-10-18 09:51:35 +02:00 |
|
Cédric Pasteur
|
85be1252b0
|
Another try to fix causality of linear ifs
|
2011-10-17 18:10:38 +02:00 |
|
Adrien Guatto
|
1ec97d187b
|
Adapted minimization to reinit.
|
2011-10-17 15:43:55 +02:00 |
|
Cédric Pasteur
|
04b8853a1d
|
Added a new reinit operator
It has type:
reinit: t at r * t -> t at r
It can be used to put a constant value in a
location.
|
2011-10-17 15:28:04 +02:00 |
|
Cédric Pasteur
|
4f9a91eebd
|
Fixed dependency issue with linear splits
|
2011-10-17 15:25:52 +02:00 |
|
Cédric Pasteur
|
e2d4d33d97
|
Fixed linear typing with args that are tuples
|
2011-10-17 11:52:36 +02:00 |
|
Cédric Pasteur
|
c2ab607195
|
Fix for causality when using linear types
|
2011-10-17 11:47:45 +02:00 |
|
Cédric Pasteur
|
6fefd551b1
|
Fixed typing of iterators in some cases
If a variable is already used linearly before,
do not reuse it linearly
|
2011-10-17 11:46:47 +02:00 |
|
Cédric Pasteur
|
0f403e3694
|
Fix for wrong number of expected args
|
2011-10-17 10:17:18 +02:00 |
|
Léonard Gérard
|
ef4478e37e
|
removed some stupid warnings.
|
2011-10-14 13:33:34 +02:00 |
|
Adrien Guatto
|
ee2f5ca443
|
Tomato: simplification + update signature via modules.
test/good/linear_init.ept now compiles.
|
2011-10-10 17:01:08 +02:00 |
|
Cédric Pasteur
|
1aac6f7be4
|
Fixed bug in unicity check in linear typing
Test case included
|
2011-10-07 11:59:13 +02:00 |
|
Adrien Guatto
|
3269a04052
|
Do not inline linear extended values.
|
2011-10-06 16:18:48 +02:00 |
|
Adrien Guatto
|
30089e7d0f
|
Fixed extvalue inlining w.r.t. linear copy
|
2011-10-05 17:44:01 +02:00 |
|
Cédric Pasteur
|
175c8e34ff
|
Fixed control fusion
|
2011-10-05 10:49:51 +02:00 |
|
Adrien Guatto
|
d0ed09c3e5
|
Ext-value inlining pass.
|
2011-10-04 15:14:02 +02:00 |
|
Cédric Pasteur
|
902cbaf7a1
|
Fixed error with memalloc and const value with when
|
2011-10-04 14:34:44 +02:00 |
|
Adrien Guatto
|
2fb27770b8
|
Fixed iterator minimization bug.
|
2011-10-03 10:54:50 +02:00 |
|
Cédric Pasteur
|
80f24b747c
|
Updated comments
|
2011-09-26 10:19:48 +02:00 |
|
Cédric Pasteur
|
36c1c7252e
|
Fixed memalloc application with fields
|
2011-09-15 16:55:17 +02:00 |
|
Cédric Pasteur
|
1231afdbb1
|
Fixed inlining
Inlining is now recursive.
|
2011-09-15 13:28:41 +02:00 |
|
Cédric Pasteur
|
26ad2739dd
|
Inlined version of mission control
|
2011-09-15 11:23:16 +02:00 |
|
Cédric Pasteur
|
da3660c08c
|
Tweaked the printer to generate correct code
There is still a big problem with priority
of operators
|
2011-09-15 11:10:39 +02:00 |
|
Cédric Pasteur
|
339feaa747
|
Ignore unknown nodes (instead of crashing)
|
2011-09-14 15:55:29 +02:00 |
|
Cédric Pasteur
|
1c43a8b1ac
|
Fixed code generation for constant arrays
|
2011-09-14 09:08:28 +02:00 |
|
Cédric Pasteur
|
3a9dc1c34d
|
Small fixes in Inline
Also inline function calls, not only nodes.
|
2011-09-12 18:11:00 +02:00 |
|
Cédric Pasteur
|
1d6b68cef6
|
Fix syntax for ocaml < 3.12
|
2011-09-09 17:03:54 +02:00 |
|