History | View | Annotate | Download (28.1 KB)
- 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
- still some improvements in optimizing in machine code ...
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@319 041b043f-8d7c-46b2-b46e-ef0dd855326e
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
- 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...
Merged horn_traces branch
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@303 041b043f-8d7c-46b2-b46e-ef0dd855326e
Prepared first stage of code reorg:1. moved type def in lustrespec.ml2. moved constructor and basic functions in corelang3. 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
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
- 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
clean handling of undefined node application
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@261 041b043f-8d7c-46b2-b46e-ef0dd855326e
bug correction in homomorphic extension
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@257 041b043f-8d7c-46b2-b46e-ef0dd855326e
Changed the load of lusi files: imported nodes or function can specify the linking lib and/or use a classical C prototype (without pointers).Parse updated as well as Makefile generation.
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@242 041b043f-8d7c-46b2-b46e-ef0dd855326e
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
- corrected causality bug (cf. previous commit)
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@227 041b043f-8d7c-46b2-b46e-ef0dd855326e
- 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...
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@216 041b043f-8d7c-46b2-b46e-ef0dd855326e
- 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
- added struct types declaration - added constant definition with a struct type - added checking for multiple definitions of nodes (behavior was buggy) - better and more uniform error messages for undefined/already defined symbols
We still need struct expressions......
work in progress for struct types...
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@184 041b043f-8d7c-46b2-b46e-ef0dd855326e
more steps towards struct types...Cette ligne, et les suivantes ci-dessous, seront ignorées--
M trunk/src/corelang.mliM trunk/src/type_predef.mlM trunk/src/main_lustre_compiler.mlM trunk/src/types.mlM trunk/src/printers.mlM trunk/src/typing.ml...
first steps towards struct types...
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@182 041b043f-8d7c-46b2-b46e-ef0dd855326e
- 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
- 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
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
Solved some bugs in the lustre printerGeneration of a witness with both the main node and hte inlined main nodeTest script modified to check consistency of the inlining process
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/branches/inlining@162 041b043f-8d7c-46b2-b46e-ef0dd855326e
better error message for tuple type mismatch
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@161 041b043f-8d7c-46b2-b46e-ef0dd855326e
again, debugged tuple subtyping
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@160 041b043f-8d7c-46b2-b46e-ef0dd855326e
removed debug printing
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@159 041b043f-8d7c-46b2-b46e-ef0dd855326e
corrected wrong subtyping rule for tuple assignment
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@158 041b043f-8d7c-46b2-b46e-ef0dd855326e
added subtyping in equations (rhs may be a subtype of lhs)
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@157 041b043f-8d7c-46b2-b46e-ef0dd855326e
- work in progress for interface typing
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@129 041b043f-8d7c-46b2-b46e-ef0dd855326e
- small bug correction in dimension typing - #open keyword instead of open - dummy generic matrix/vector library interface added - modified examples according to the new syntax
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@126 041b043f-8d7c-46b2-b46e-ef0dd855326e
Merge (if it works) of the lustre interfaces branche providing lusi files into trunk
git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@123 041b043f-8d7c-46b2-b46e-ef0dd855326e
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