Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec @ 54d032f5

# Date Author Comment
54d032f5 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...

d5767b5a 09/10/2014 06:01 PM Xavier Thirioux

- code complete for automata
- debugging in progress, not usable yet

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

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

407759f7 09/05/2014 03:06 PM Xavier Thirioux

- more work towards automata

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

2822cf55 09/04/2014 04:20 PM Xavier Thirioux

- some steps towards integration of automata

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

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

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

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

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

0172f92d 07/15/2014 03:01 PM Xavier Thirioux

ooops, things got a bit scrambled with svn, restoring...

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

ed81df06 07/15/2014 02:15 PM Xavier Thirioux

added some functions, prior to code refactoring

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

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

b13a7d5f 07/12/2014 02:23 PM Xavier Thirioux

- reimplementation of the reuse algorithm (option -O 3),
much more simple and efficient.

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

28c58de1 07/11/2014 04:29 PM Xavier Thirioux

- 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

919292ca 07/11/2014 02:57 PM Xavier Thirioux

- missing case in clock disjunction predicate, the absence of which produced
weak (but still correct) optimization results.

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

74f1d8d3 07/10/2014 11:19 PM Xavier Thirioux

- corrected a small bug in clock calculus

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

6fdfb60b 07/10/2014 05:19 PM Xavier Thirioux

- several bugs corrected when mixing tuples with clocks

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

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

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

be3dd43f 07/09/2014 12:35 AM Teme Kahsai

Fixed horn backend to make query for properties. More work needed for cex

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

43aa67ec 07/09/2014 12:35 AM Teme Kahsai

Fixed horn backend to make query for properties. More work needed for cex

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

32e6c218 07/08/2014 06:17 PM Teme Kahsai

added git version of svn_version

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@310 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...

b6a94a4e 07/07/2014 10:35 AM Xavier Thirioux

work in progress in liveness analysis...

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

44bea83a 07/04/2014 04:57 PM Xavier Thirioux

work in progress (code optimization again)

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

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

bb2ca5f4 07/03/2014 10:40 PM Xavier Thirioux

added some infrastructure to ease optimization (reusing vars)

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

99d3df04 07/02/2014 05:32 PM Pierre-Loïc Garoche

Merged branches specification_reorg_corelang_parser (see last commit message, moved definitions/functions btw files and changed eexpr type)

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

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

add75bcb 07/02/2014 04:14 PM Xavier Thirioux

more steps toward reusing variables (dead ones + clock disjoint ones)

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

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

3bfed7f9 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

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

54e22304 06/25/2014 05:38 PM Pierre-Loïc Garoche

Merged with new specification backend: only eacsl makefile for the now on

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

d4107cf2 06/25/2014 05:37 PM Pierre-Loïc Garoche

Merged trunk updates

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

4162f7a0 06/25/2014 05:00 PM Pierre-Loïc Garoche

Solved Bug in horn backend: when main node is stateless

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

0e1049dc 06/25/2014 02:33 PM Xavier Thirioux

work in progress:
- warnings for unused input/memory variables
- optimization of machine code

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

2516ebdf 06/25/2014 01:11 PM Pierre-Loïc Garoche

New branch to copy the specgeneration using the new backend functors

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

bc0e1cec 06/25/2014 01:06 PM Pierre-Loïc Garoche

Merged the new backend split into trunk

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

cefc3744 06/25/2014 12:47 PM Pierre-Loïc Garoche

Specialized the prefix/postfix modifiers through functors arguments

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

cd670fe1 06/25/2014 11:13 AM Pierre-Loïc Garoche

Split all functions of C backends in separate files

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

b84a138e 06/25/2014 10:54 AM Pierre-Loïc Garoche

Added the lustre backend
Still some work on adapating the instruction scheduling

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

13eb21df 06/25/2014 10:15 AM Pierre-Loïc Garoche

Moved c_backend in separate folder

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

8df90dd3 06/25/2014 08:20 AM Pierre-Loïc Garoche

Solved bug in optimization of machine code: output variable def should not be eliminated

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

bd3ef34a 06/25/2014 07:45 AM Pierre-Loïc Garoche

Solved local var name bugs for stateless nodes as outlined by Teme

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

652ac62c 06/24/2014 09:53 PM Pierre-Loïc Garoche

Added branch to separate code gen/file creation/spec/proof

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

429ab729 06/24/2014 04:30 PM Pierre-Loïc Garoche

Mini bug solved: do not unfold array constants

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

cf78a589 06/24/2014 03:57 PM Pierre-Loïc Garoche

Missing files

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

c1adf235 06/24/2014 03:57 PM Pierre-Loïc Garoche

Restructured the main: call to optimization, scheduling performed out of machine_code, etc
Merge Xavier last commits
Unfinished lustre backend

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

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

Extracted scheduling from machine code computation

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

6d89b953 06/24/2014 01:54 PM Pierre-Loïc Garoche

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

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

25b4311f 06/23/2014 09:56 AM Xavier Thirioux

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

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@268 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

f01a1af8 06/17/2014 11:56 PM Pierre-Loïc Garoche

Update on the test script

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@265 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

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

3dacdcc2 05/23/2014 09:36 AM Pierre-Loïc Garoche

Convertion operators

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@258 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

4e07ac7f 05/20/2014 02:12 PM Xavier Thirioux

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

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

6e7164b1 05/20/2014 01:47 PM Pierre-Loïc Garoche

Math lusi (trigo)

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

07d8e7e7 05/19/2014 03:51 PM Xavier Thirioux

bug corrected for allocation of dynamic arrays in node memory

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@251 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

525f9650 05/19/2014 01:57 PM Pierre-Loïc Garoche

Updated list with new tests

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

3826f8cb 05/19/2014 01:46 PM Pierre-Loïc Garoche

Solved bug:
- loading lusi
- loading lib in lusi files: "in m" is now "lib m"

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

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

Additional checks in transpose

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

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

1b01da98 05/19/2014 01:44 PM Pierre-Loïc Garoche

Bug solved on tuple equalities in expressions (eg. OK = (a,b,c) = (d,e,f))

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

54ae8ac7 05/16/2014 05:26 PM Pierre-Loïc Garoche

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

b1a97ade 04/01/2014 06:03 PM Xavier Thirioux

still computing disjoint clock information (for reusing more variables)

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

8f89eba8 03/31/2014 04:29 PM Xavier Thirioux

computing statically disjoint variables (to enhance resusability)

git-svn-id: https://cavale.enseeiht.fr/svn/lustrec/lustre_compiler/trunk@239 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

bd771bbe 03/24/2014 09:22 AM Xavier Thirioux

- some minor adjustments...

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

d4807c3d 03/24/2014 09:05 AM Xavier Thirioux

- corrected causality bug (cf. previous commit)

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

7afcba5a 03/20/2014 03:41 PM Xavier Thirioux

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

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

a5784e75 03/19/2014 11:00 PM Xavier Thirioux

- modified example (arguments are now in the right order wrt clock declaration).
- debugged liveness analysis...

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

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

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

8ea13d96 03/18/2014 06:05 PM Xavier Thirioux

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

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

2e6f9ba8 03/17/2014 01:01 PM Xavier Thirioux

improved code generation by factorizing out arrows

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

6955f956 03/17/2014 12:46 PM Pierre-Loïc Garoche

Version compatible avec le francais

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

1692756a 03/17/2014 09:06 AM Pierre-Loïc Garoche

Updated test script: changed path and verbose mode

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

3f9600bb 03/17/2014 07:44 AM Pierre-Loïc Garoche

Moved tests outside of source code to avoid useless duplication.

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

443f0686 03/17/2014 07:40 AM Pierre-Loïc Garoche

Added Alice Tailliar example

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

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

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

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

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

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

21485807 03/11/2014 03:41 PM Xavier Thirioux

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

6a6abd76 03/06/2014 04:33 PM Xavier Thirioux

first steps towards struct types...

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

fa090c4e 03/06/2014 03:39 PM Xavier Thirioux

corrected bug in arrow macros names, added storage attribute for static alloc macros, option -d now creates the destination directory if needed, with current dir as file permissions

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

04e26a3f 03/05/2014 04:32 PM Xavier Thirioux

answer to #feature 50:
- arrows are now factorized out and become part of include
as files arrow.h and arrow.c
- no more arrows in generated code
- compiling and linking arrow.c is only necessary
in case of dynamic allocation
- version now includes installation prefix (for the standard lib)...

2fa10a44 03/05/2014 02:35 PM Xavier Thirioux

In order to export any type of constants, moved type definitions from .c to .h

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

e772c6ef 03/04/2014 02:41 PM Eric Noulard

Generate extern declarations for constant as well.

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

5e925ce8 03/01/2014 03:38 PM Xavier Thirioux

- stupid svn had removed a file, again

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

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

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

c3bbc76e 02/28/2014 11:59 PM Pierre-Loïc Garoche

Updated script. Does not seem to be fully functional yet.

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

65f71d05 02/28/2014 11:59 PM Pierre-Loïc Garoche

Added default ensures statements

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

a6c265f5 02/28/2014 05:09 PM Xavier Thirioux

- added dummy_lib.lusi (accidentally removed !?)

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