Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec / src / inliner.ml @ e8250987

History | View | Annotate | Download (19.9 KB)

# Date Author Comment
2d27eedd 10/08/2018 04:52 PM Pierre-Loïc Garoche

- Global type env and clock env now availble as a global reference (Global module)
- Adapted the parsing of specification with a cocospec compatible one
- The data structure of contracts is now almost cocospec compatible
- Lustrec-test has been updated to use the newest syntax

778c80fd 10/05/2018 07:54 PM Pierre-Loïc Garoche

Some refactoring
Adapted the parser/types/constructors for cocospec syntax

8446bf03 03/30/2018 05:54 PM Pierre-Loïc Garoche

- Makefile: solved dependency problem when compiling include lusi
- Renamed type declarations as lustre_types and machine_code_types

66359a5e 01/31/2018 07:27 AM Pierre-Loïc Garoche

[general] large modification: added machine types, a second typing phase dealing with machine types (eg uint8)
typing was transformed as a functor and parametrized by basic types (int/real/bool)
it can also be applied multiple times on the same program

333e3a25 12/18/2017 09:57 AM Pierre-Loïc Garoche

[general] Refactor get_node_eqs to produce (eqs, auts) with automatons

264a4844 07/20/2017 10:20 PM Pierre-Loïc Garoche

First working version of algebraic loop resolution. Disabled by default.

1bff14ac 06/23/2017 06:13 PM Pierre-Loïc Garoche

- Added a field lustre_eq to machine instruction in order to record the originating lustre equation
- EMF backend now impose the optimization level to be set to 0 in order to avoid equation elimination that would render traceability difficult
- Options.ml has been split into Options.ml / Options_management.ml. Options.ml only contains references and no functions

d2d9d4cb 04/26/2017 11:25 PM Pierre-Loïc Garoche

Missing files

85da3a4b 04/26/2017 11:23 PM Pierre-Loïc Garoche

Merge branch 'unstable' into merging_plugins
Non regression results were similar to master branch

45f0f48d 08/09/2016 09:31 PM Xavier Thirioux

...

04a63d25 08/06/2016 10:29 AM Xavier Thirioux

full merge of salsa/mpfr and master

53206908 11/26/2015 04:45 PM Xavier Thirioux

major branche merging salsa/mpfr with trunk

ec433d69 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...

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...

fc886259 04/03/2015 06:22 PM Xavier Thirioux

LOTS of bug correction wrt inlining, still a work in progress...
- global constants were not accounted for
- no good avoidance of name capture when inlining
- static parameters (array sizes and clocks) not handled
- ill-typed generated expressions, when inlining array expressions...

b3f91fdb 04/03/2015 06:22 PM Xavier Thirioux

LOTS of bug correction wrt inlining, still a work in progress...
- global constants were not accounted for
- no good avoidance of name capture when inlining
- static parameters (array sizes and clocks) not handled
- ill-typed generated expressions, when inlining array expressions

566dbf49 03/24/2015 07:26 PM Pierre-Loïc Garoche

Added local inlining using the keyword (*! /inlining/:true *)

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@426 041b043f-8d7c-46b2-b46e-ef0dd855326e

6394042a 03/24/2015 07:26 PM Pierre-Loïc Garoche

Added local inlining using the keyword (*! /inlining/:true *)

b08ffca7 09/09/2014 06:03 PM Xavier Thirioux

- work in progress for automata...

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@333 041b043f-8d7c-46b2-b46e-ef0dd855326e

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

- work in progress for automata...

04d15b97 09/03/2014 08:47 PM Xavier Thirioux

- some code cleaning
- removed a potential source of bug in scheduler

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@330 041b043f-8d7c-46b2-b46e-ef0dd855326e

2ac56807 09/03/2014 08:47 PM Xavier Thirioux

- some code cleaning
- removed a potential source of bug in scheduler

70df2f87 09/03/2014 04:02 PM Xavier Thirioux

- corrected bugs with the inlining mode

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@329 041b043f-8d7c-46b2-b46e-ef0dd855326e

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

- corrected bugs with the inlining mode

9603460e 09/02/2014 05:46 PM Xavier Thirioux

- corrected bug with destination directory (-d option)
- corrected several bugs in inlining
- STILL, BUGS REMAINING in inlined code !!??!!

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@328 041b043f-8d7c-46b2-b46e-ef0dd855326e

3f823d04 09/02/2014 05:46 PM Xavier Thirioux

- corrected bug with destination directory (-d option)
- corrected several bugs in inlining
- STILL, BUGS REMAINING in inlined code !!??!!

ef34b4ae 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...

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

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

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

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@313 041b043f-8d7c-46b2-b46e-ef0dd855326e

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

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

Merged horn_traces branch

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@303 041b043f-8d7c-46b2-b46e-ef0dd855326e

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

Merged horn_traces branch

01c7d5e1 07/02/2014 05:29 PM Pierre-Loïc Garoche

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

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/branches/specification_reorg_corelang_parser@297 041b043f-8d7c-46b2-b46e-ef0dd855326e

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

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

b50c665d 05/23/2014 02:51 PM Pierre-Loïc Garoche

inlining update

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@259 041b043f-8d7c-46b2-b46e-ef0dd855326e

9f8c4c1d 05/23/2014 02:51 PM Pierre-Loïc Garoche

inlining update

3ab5748b 05/19/2014 01:45 PM Pierre-Loïc Garoche

Check node is stateful

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@245 041b043f-8d7c-46b2-b46e-ef0dd855326e

316af809 05/19/2014 01:45 PM Pierre-Loïc Garoche

Check node is stateful

52cfee34 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)

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@198 041b043f-8d7c-46b2-b46e-ef0dd855326e

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)

592f508c 03/01/2014 12:01 AM Pierre-Loïc Garoche

Reenabled the generation of witnesses for inline process.
Systematic use of the build path

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@175 041b043f-8d7c-46b2-b46e-ef0dd855326e

2842f7ca 03/01/2014 12:01 AM Pierre-Loïc Garoche

Reenabled the generation of witnesses for inline process.
Systematic use of the build path

867595f2 02/28/2014 01:52 PM Pierre-Loïc Garoche

Merge inlining branch within trunk.
The test target requires branch lustrec/horn as binary lustreh.

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@166 041b043f-8d7c-46b2-b46e-ef0dd855326e

49b32cb6 02/28/2014 01:52 PM Pierre-Loïc Garoche

Merge inlining branch within trunk.
The test target requires branch lustrec/horn as binary lustreh.

b09a175c 02/28/2014 01:43 PM Pierre-Loïc Garoche

inliner function

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/branches/inlining@165 041b043f-8d7c-46b2-b46e-ef0dd855326e

274c72ec 02/28/2014 01:43 PM Pierre-Loïc Garoche

inliner function