| Branch: | Tag: | Revision:

lustrec / src / @ 5500edb8

History | View | Annotate | Download (22.2 KB)

# Date Author Comment
5500edb8 10/08/2015 07:11 PM Pierre-Loïc Garoche

Two fresh branches :)
to manage enum and arrays in the horn backend.

b3b0dd56 05/04/2015 08:13 AM Xavier Thirioux

corrected a small bug when -horn option was active

01d48bb0 04/08/2015 10:03 PM Xavier Thirioux

Major revision due to severe limitations and bugs of inlining capabilities:
- destination dir should now work properly
- lusic files now have a version number, to avoid nasty segfaults
when loading lusic files created by an older compiler version
- inlining should now work with generic nodes and generic array library...

58272238 03/16/2015 08:31 PM Teme Kahsai

modifed / to div in horn backend

e42fb618 02/16/2015 11:52 PM Pierre-Loïc Garoche

Solved bug found by Teme about asserts.

Previously assert expression containing -> would lead to unnormalized ite. Now each expression within the assert is normalized and may bind new node equations.
This could be later optimized but is working now.

5ae8db15 12/01/2014 11:32 PM Pierre-Loïc Garoche

- Dealt with compiling lusic from distant lusi files.
- Header now do not allow the generation of function previously declared as C prototype

d5fe9ac9 09/18/2014 05:25 PM Xavier Thirioux

- corrected bug in node reset clock
- cleaner (but heavier !) code generation scheme for automata

6a1a01d2 09/14/2014 08:08 PM Xavier Thirioux

- Added major feature: Lustre V6 automata !!!
- one automata example added
- changed the reset condition in node calls (now a simple bool expr)
- bug corrected in clock calculus
- bug corrected in traceability info
- added field in variables to test whether they are original...

1eda3e78 09/09/2014 06:03 PM Xavier Thirioux

- work in progress for automata...

cfdb4fe9 09/03/2014 04:02 PM Xavier Thirioux

- corrected bugs with the inlining mode

70e1006b 09/02/2014 02:43 PM Xavier Thirioux

This is a major revision:
- added interface files (.lusi) in the language, that can be compiled on their own, giving an object file (.lusic) and a header file (.h)
- modular code generation, from Lustre to C level included.
- nice amount of code refactoring

01f1a1f4 07/10/2014 12:49 PM Xavier Thirioux

- added missing constraint check when sub-clocking
tuple expressions
- added an algorithm that reuses dead or clock-disjoint
variables instead of declaring/using new ones.
- NOT carefully tested. Use option -O 3 if you want
to give it a try...

b38ffff3 07/09/2014 09:57 AM Pierre-Loïc Garoche

Updated the licence info and header for each file.
Moved backends in separate folders

2cf39a8e 07/08/2014 04:53 PM Xavier Thirioux

- many bugs/limitations in lifting operators to tuples have been worked out:
- typing/clock calculus/normalization now work properly
- still, a bug in annot generation (this one is for Ploc !!)
in file normalization, line 396
- bug corrected in subtyping...

7cd31331 07/04/2014 04:57 PM Xavier Thirioux

work in progress (code optimization again)

36454535 07/03/2014 10:46 PM Pierre-Loïc Garoche

Merged horn_traces branch

1837ce98 07/03/2014 10:40 PM Xavier Thirioux

added some infrastructure to ease optimization (reusing vars)

0038002e 07/02/2014 05:29 PM Pierre-Loïc Garoche

Prepared first stage of code reorg:
1. moved type def in
2. moved constructor and basic functions in corelang
3. Modified eexpr with prenext quantifiers

9aaee7f9 06/26/2014 04:48 PM Xavier Thirioux

added warnings for useless variables (at verbose level 1)
- exact definition of 'useless' may be further refined
- display could certainly be improved

db1c5c00 06/24/2014 03:16 PM Pierre-Loïc Garoche

Extracted scheduling from machine code computation

1ad092fb 06/24/2014 01:54 PM Pierre-Loïc Garoche

Create a Step call only for functions that are not in basic lib

fa0db9d5 06/23/2014 09:56 AM Xavier Thirioux

- bug correction (regression from previous versions !) introduced
in C code generated from relational operators.

6b4d172f 06/20/2014 04:59 PM Xavier Thirioux

- refactorization of typing code (simpler subtyping rules)
- simplification of clock calculus (may be still buggy, work in progress)
no impact on unclocked programs.

1174cdd9 05/20/2014 02:12 PM Xavier Thirioux

typo corrected in code generation for array memories (bad parentheses)

84d9893e 03/24/2014 09:05 AM Xavier Thirioux

- corrected causality bug (cf. previous commit)

e8c0f452 03/20/2014 03:41 PM Xavier Thirioux

liveness analysis improved. BUG found in causality wrt clocks...

d4101ea0 03/19/2014 06:08 PM Xavier Thirioux

- reimplemented computation of dead variables
- added computation of a reuse policy (depending on types)
- not yet used though, would have to change code generation
in order to be useful...

6cf31814 03/18/2014 06:05 PM Xavier Thirioux

added liveness analysis for reusing dead variables. Not yet used.

5538b7ac 03/17/2014 12:17 AM Xavier Thirioux

Added declaration/definition of stateless/stateful nodes.
The 'function' keyword is for stateless nodes only,
the 'node' keyword is any kind of node.
Improves compilation and paves the way for more optimizations.

d3e4c22f 03/14/2014 05:45 PM Xavier Thirioux

- work in progress for stateless/stateful status computation
(to turn conditionals into merges, which yield more efficient C code)

2ea1e4a6 03/13/2014 05:30 PM Xavier Thirioux

corrected bugs in clock generalization that produced pessimistic C code (not wrong though); corrected bug with node importation policy wrt (re)declaration, (re)definition...

29ad4531 02/28/2014 03:28 PM Pierre-Loïc Garoche

Merge back horn backend branch in trunk

04a7df69 02/21/2014 08:37 AM Pierre-Loïc Garoche

In the middle of the coding process. Just pushing thinks

f6923c9e 02/19/2014 05:02 PM Pierre-Loïc Garoche

Initial copy of the horn output version. Not really working yet

0cbf0839 10/02/2013 08:13 AM Pierre-Loïc Garoche

Moved files to trunk in lustre_compiler