Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec / src / types.ml @ 45f0f48d

History | View | Annotate | Download (10.6 KB)

# Date Author Comment
04a63d25 08/06/2016 10:29 AM Xavier Thirioux

full merge of salsa/mpfr and master

2d179f5b 11/07/2015 07:40 PM Xavier Thirioux

numerous bugs corrected:
- bug in expansion of array accesses with constant arrays
- bug in printing complex array indexes (not C compliant)
- bug wrt C99 typing policy for constant arrays
- bug in signaling wrong useless static input

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

e3a4e911 04/13/2015 10:08 AM Xavier Thirioux

some optimization in code optimization !!

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

e39f5319 04/09/2015 10:57 PM Xavier Thirioux

corrected a bug when activating optimization (-O 3) (edge missing in a dep graph)

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

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

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

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

b1655a21 07/15/2014 09:27 AM Xavier Thirioux

- started refactoring type definitions in .lus/.lusi,
in order to ease the way .lusi interface files are handled.

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

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

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

8a183477 06/27/2014 04:29 PM Xavier Thirioux

added construction of a fanin table for local variables of a node.
could be useful for a finer variable elimination scheme at the Lustre level.
to be continued...

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

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

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

719f9992 06/12/2014 05:53 PM Xavier Thirioux

clean handling of undefined node application

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

870420a0 06/12/2014 02:08 PM Pierre-Loïc Garoche

Updated typing error

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

b616fe7a 05/22/2014 10:29 AM Xavier Thirioux

bug correction in homomorphic extension

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

81af199f 05/19/2014 02:38 PM Xavier Thirioux

node memory namespace bug corrected; library linear_ctl/arrays corrected

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

b35da910 03/24/2014 02:37 PM Xavier Thirioux

removed debug message

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

96f5fe18 03/24/2014 02:36 PM Xavier Thirioux

changed name generation to avoid conflict with C predefined symbols; added checking for declared but not defined node symbol

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

b174e673 03/10/2014 05:56 PM Xavier Thirioux

work in progress for struct types...

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

12af4908 03/10/2014 09:55 AM Xavier Thirioux

more steps towards struct types...
Cette ligne, et les suivantes ci-dessous, seront ignorées--

M trunk/src/corelang.mli
M trunk/src/type_predef.ml
M trunk/src/main_lustre_compiler.ml
M trunk/src/types.ml
M trunk/src/printers.ml
M trunk/src/typing.ml...

8f1c7e91 03/01/2014 03:37 PM Xavier Thirioux

- added generation of clock information in interface (.lusi) files
- added clock checking between interface and implementation files

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

7291cb80 02/28/2014 04:56 PM Xavier Thirioux

- merged test script
- added -d support
- corrected #open parser problem
- corrected interface/implementation (.lusi/.lus) checking
for types (not yet for clocks)

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

22fe1c93 10/02/2013 08:13 AM Pierre-Loïc Garoche

Moved files to trunk in lustre_compiler

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