Skip to content
Snippets Groups Projects
  1. Jun 10, 2014
  2. Jun 02, 2014
  3. May 30, 2014
  4. May 12, 2014
  5. Mar 25, 2014
  6. Jan 22, 2014
  7. Dec 11, 2013
    • Erwan Jahier's avatar
      Rewrite the topological sort of actions. · 612d8213
      Erwan Jahier authored
      The main difference is that I use a map instead of list to store
      visited nodes.  The compilation time of normal.ec is divided by 2!!
      (35s->15s)
      
      We do not really see the difference in the time of the non-reg tests
      since the execution of normal.ec still exceeds the 10s timeouts.
      612d8213
  8. Dec 10, 2013
  9. Dec 04, 2013
  10. Nov 29, 2013
  11. May 28, 2013
  12. May 15, 2013
    • Erwan Jahier's avatar
      Fix test the -ec mode in presence of clocked variable. · d5870c84
      Erwan Jahier authored
      Indeed, I've intentionally removed the when statements in clocked local var like this :
      
       var
          v:int;
      
      because the following was producing a syntax error in ecexe:
      
       var
          v:int when c;
      
      But Actually, the right thing to do was to generate the following:
      
       var
          (v:int) when c;
      
      ...
      
      nb : #FAILS=90->89
      d5870c84
  13. May 10, 2013
  14. May 06, 2013
  15. Apr 26, 2013
  16. Apr 25, 2013
  17. Apr 24, 2013
  18. Apr 23, 2013
    • Erwan Jahier's avatar
      Fix several issues w.r.t. clocks during node expansion. · cb891dc4
      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.
      cb891dc4
  19. Apr 22, 2013
  20. Apr 17, 2013
  21. Apr 12, 2013
    • Erwan Jahier's avatar
      lus2lic is now working from ldbg and ltop. · fa71e77c
      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).
      fa71e77c
  22. Apr 10, 2013
  23. Apr 03, 2013
  24. Mar 19, 2013
  25. Feb 13, 2013
  26. Jan 24, 2013
  27. Jan 16, 2013
  28. Jan 11, 2013
  29. Dec 18, 2012
  30. Dec 13, 2012
    • Erwan Jahier's avatar
      Documentation et renommage des modules. · 65dfa567
      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
      65dfa567
  31. Dec 11, 2012
    • Erwan Jahier's avatar
      Un petit bilan des changements effectués par Pascal · dce00f59
      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.
      dce00f59
  32. Aug 07, 2012
  33. Jul 14, 2012
  34. Jul 10, 2012
  35. Jul 07, 2012
  36. Jul 06, 2012
Loading