- May 10, 2013
-
-
Erwan Jahier authored
I though polymorphism was removed by l2lRmPoly.ml, but well, it was easy. nb : #FAILS=131->128
-
- May 06, 2013
-
-
Erwan Jahier authored
where equations such as " ok = (x=x_ref); " are translated into incorrect v' lustre when x is a structure or an array. nb : #FAILS=152->135
-
- Apr 26, 2013
-
-
Erwan Jahier authored
(to be kind with data plotters).
-
Erwan Jahier authored
-
- Apr 25, 2013
-
-
Erwan Jahier authored
-
Erwan Jahier authored
Actually it does not fix any test, but I feel it is a (slight) progress, so I commit it... Well, to be fair, one objective progress is that I can now compile the test suite with the -np option.
-
- Apr 24, 2013
-
-
Erwan Jahier authored
-
- Apr 23, 2013
-
-
Erwan Jahier authored
(1) equations such as (x,y,z)=[0,0,0]; were generated with -en unless -ec was specified. I've fixed that by always breaking tuples, even when global_opt.ec is false (this condition was strange anyway). (2) During node expansion, I create a fresh variable for each local var in the expanded node, but old var names were still appering in clock expression indeed, consider that example : var c:bool; x when c :bool; I was generating something equivalent to var c_fresh:bool; x_fresh when c :bool; bou... Of course, it was working because in -ec mode, I need to remove clock annotation when declaring local variables, which was hidding the problem. nb : because I've change test_lus2lic_no_node to use -lv4 instead of -ec to generate the lustre oracle, which exposes new pbs (cf above). (3) When expanding a node on the base clock with arguments on another clock, I was not propagating that information (let's keep the finger-crossed and hope the current fix is complete). nb : the number of failing test cases is the same (5 new pass, but 5 new fail!!), but it actually is a progression. Indeed, the new test failures ares due to the fact that this current change fixes a problem that expose yet another one! Actually, the newly exposed bug is not in the compliler, but in the oracle I generate via the --auto-test option ; indeed, for testing nodes which not all interface variables are one the base clock, I should generate oracle that do take them into account.
-
- Apr 22, 2013
-
-
Erwan Jahier authored
112 tests failed, and 127 passed !!
-
- Apr 17, 2013
-
-
Erwan Jahier authored
Add --gen-autotest option that generates a Lutin file and an oracle Lustre file suitable to compare the result of 2 Lustre compilers
-
- Apr 12, 2013
-
-
Erwan Jahier authored
As far as ldbg is concerned, it only traces the toplevel node, at call event. Note that I needed to rename quite a lot of modules to avoid name clashes between lus2lic.a and ltop. I've also merged the Verbose module with the one of Lutin so that they can be shared (there were sharing 95% already).
-
- Apr 10, 2013
-
-
Erwan Jahier authored
Also Merge the Global and the MainArg module as they were (bizzarely) both handling command args options.
-
- Apr 03, 2013
-
-
Erwan Jahier authored
nb : programs do run, but I did not check that they run correctly... Also fix a regression introduced in the previous change where incorrect ec code was generated for diese.
-
- Mar 19, 2013
-
-
Erwan Jahier authored
-
- Feb 13, 2013
-
-
Erwan Jahier authored
BTW, put everything that concerns node environement into the new IdSolver module (from the Lic module).
-
- Jan 24, 2013
-
-
Erwan Jahier authored
-
- Jan 16, 2013
-
-
Erwan Jahier authored
-
- Jan 11, 2013
-
-
Erwan Jahier authored
Also do not print type and const declarations with -ec.
-
Erwan Jahier authored
-
Erwan Jahier authored
nb : I've transformed all the regressions I've seen into todo entries in todo.org. nb 2 : I did not mv the newly broken tests into the broken dirs. I'll do that for those I do not want to fix in the short term.
-
- Dec 18, 2012
-
-
Erwan Jahier authored
-
- Dec 13, 2012
-
-
Erwan Jahier authored
nb: les tests ne passent toujours bien sur. * Partie lus -> AST predef.ml -> srcPredef.ml syntaxTreeCore.ml -> astCore.ml syntaxTree.ml -> astV6.ml syntaxTreeDump.mli-> astV6Dump.mli * Partie Ast -> Ast solveIdent.mli -> astRecognizePredef.mli syntaxTab.mli -> astTab.mli symbolTab.mli -> astTabSymbol.mli * Partie AST -> lic (static evaluation) eff.ml -> lic.ml getEff.mli -> ast2lic.mli lazyCompiler.mli -> licTab.mli builtIn.ml -> licMetaOp.ml predefEval*.ml -> licEval*.ml name.mli -> licName.mli * Partie Lic -> Lic uniqueOutput.mli -> l2lCheckOutputs.mli structArrayExpand.mli -> l2lExpandArrays.mli nodesExpand.mli -> l2lExpandNodes.mli doNoPoly.ml -> l2lRmPoly.ml doAliasTypes.ml -> l2lAliasType.ml doSplit.ml -> l2lSplit.ml
-
- Dec 11, 2012
-
-
Erwan Jahier authored
+ remise en place du souk qu'il a mis dans le repertoire test. - il a commencé à rajouter le CondAct (tout est parti de la en fait...) - il a coupé le LazyCompiler en morceaux Pour cela, il a créé un nouveau module LicPrg qui définit la structure de données (SDD) en sortie du LazyCompiler. Ensuite, les diverses tranformations src2src sont faites à partir de cette SDD. - il a débranché (temporairement) l'expansion de noeud et de array/structure - il a débranché ma pseudo inférence de type et a mis à la place une vérification de types. - Le traitement du polymorphisme est effectué via une transfo src2src dans DoNoPoly (que je vais renommer en RmPoly) -------------------------------------------------------------------------- Par ailleurs, J'ai créé un todo.org et un README.org que je vais essayer de tenir à jour. nb: les tests ne passent toujours bien sur.
-
- Aug 07, 2012
-
-
Pascal Raymond authored
-
- Jul 14, 2012
-
-
Pascal Raymond authored
et donc ne marchent plus !
-
- Jul 10, 2012
-
-
Pascal Raymond authored
-
- Jul 07, 2012
-
-
pascal authored
-
- Jul 06, 2012
-
-
Pascal Raymond authored
-
- Jun 01, 2011
-
-
Erwan Jahier authored
parametric nodes (or predef iterators) are nested. Before, nested iterators were handles as follows : a source-level (i.e., not compiled) alias node was created on-the-fly, and then compiled. But this way to proceed was buggy for static args coming from nested iterators or nested parametric nodes. Now, I rely on Inline.iterators to get rid of iterators (the iterator inlining is now recursive).
-
- May 19, 2011
-
-
Erwan Jahier authored
not use the module name. Otherwise, names with "::" are created, and sometimes the lhs of the "::" does not even correpond to an existing module.
-
- Nov 03, 2010
-
-
Erwan Jahier authored
-
- Aug 19, 2010
-
-
Erwan Jahier authored
the includer file, instead of the compiling directory. Also, avoid loops when including files. Add a --nonreg-test option that prevent the compiler to print file name paths in error messages. Indeed, this change makes all file names absolute, which complicates the non-regression tests automatic perusal.
-
- May 05, 2010
-
-
Erwan Jahier authored
Add a -tlex option to debug the lexer. Also, rename the rules in parser.mly now that their appear in the manual. This renaming work is in progress though.
-
- Apr 13, 2010
-
-
Erwan Jahier authored
-
- Apr 09, 2010
-
-
Erwan Jahier authored
This is useful to be able to compile V4 program that uses include.
-
- Apr 08, 2010
-
-
Erwan Jahier authored
Fix a performance bug that was occuring with programs having a lot of variables and that were using constant.
-
Erwan Jahier authored
-
- Jan 22, 2010
-
-
Erwan Jahier authored
cf test/should_work/NONREG/fresh_name.lus where the local variable _n1e1_1 was defined twice ! The fix contist the following idea : prefix fresh var name by "_", except if at least one user ident begins by "_". In that case, we try to prefix them by "_1", and then "_2", and so on. We take the first possible one. nb : this won't work if the user defined idents from "_1" to "_1073741823" (on 32-bits machine), but I bet that this compiler would die before anyway...
-
- Jan 20, 2010
-
-
Erwan Jahier authored
-
- Mar 11, 2009
-
-
Erwan Jahier authored
expanser to expand the mentioned node.
-