Skip to content
Snippets Groups Projects
  1. Aug 18, 2017
    • erwan's avatar
      Do dep-loop checking before removing alias, otherwise some variables disappear ! · b13c9efb
      erwan authored
      And it is now done only by Lic2soc (L2lCheckLoops is not used anymore)
      
      Also, during this change, I was bitten again by the « "__" versus "::" in ident
      names » problem again.
      
      The core of this problem is due to the fact that I use LicDump both for
      (1) dealing with internal ident names
      (2) generating lustre files
      
      Because of (2), ident names may depend on the ec or the v4 option. hence, internal
      names were sometimes translated with "__" instead of "::".
      
      To (try to) fix that, I've added a boolean flag to all "to_string" functions that
      states whether the function is used for internal purposes, or for generating lustre
      files.
      
      It was quite a boring change, that triggered other problems, that I've fixed
      in this (too long) commit :
       - -esa should force -en, otherwise bad things happen (-esa is used for -ec anyway)
       - in -esa mode, #/nor inputs tuples of bool, not arrays
       - fix the list of predi op that returns a type different that its arg (SocPredef)
      b13c9efb
  2. Jan 02, 2017
  3. Dec 22, 2016
  4. Nov 30, 2016
  5. Sep 13, 2016
  6. Aug 26, 2016
  7. May 27, 2016
  8. Feb 03, 2016
  9. Jan 14, 2016
  10. Jul 06, 2015
    • Pascal Raymond's avatar
      Probleme des noeud parametrique definis dans un pack : · 03572aa0
      Pascal Raymond authored
      * la syntaxe est changee pour l'accepter
      * la stucture IdSolver (compil "lazy") contient maintenant
        "all_srcs" qui permet d'acceder si besoin a n'importe quelle info source,
        notamment les params statiques des noeuds identifies par "Pack::name"
      03572aa0
  11. Feb 27, 2015
  12. Jan 21, 2015
    • Erwan Jahier's avatar
      Check node declaration wrt safety and memory. · b29c70ff
      Erwan Jahier authored
        More precisely, a node that has memory ougth to be declared using
        "node", and using "function" otherwise.
      
        Moreover, a node that performs side-effects (i.e., if it calls an
        extern node that performs side effects) ougth to be declared as
        "unsafe".
      
        Safe/unsafe mismatches raise an error.
      
        Memory mismatches raise an error in one way (a "function" that uses
        memory), and a warning in the other way (a "node" that uses no
        memory).
      
      Also fix some errors done when transmitting the unsafe flag (well, it's
      the first time I use it!).
      b29c70ff
  13. Sep 04, 2014
  14. Oct 23, 2013
    • Erwan Jahier's avatar
      A tentative to fix a bug in clock checking appearing in a program of · cc1ab2b7
      Erwan Jahier authored
      Timothy Bourke (trigerred where the clock of some args are some other
      args and when the names of variables are shared between the caller
      and the callee).
      
      The problem is in UnifyClock.f or (in evalClock.ml) ; the current
      change in evalClock.ml fixes the pb in Tim's program, but I suspect
      it is still buggy.
      cc1ab2b7
  15. May 17, 2013
  16. Apr 25, 2013
  17. 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
  18. Mar 27, 2013
    • Erwan Jahier's avatar
      Rework the type of Lic expressions w.r.t. predef expressions. · 28f47082
      Erwan Jahier authored
      1) At the Lic level, there's no reason to distinguish betwenn node
      calls, and predef node calls. Indeed it makes things simpler and more
      homogeneous afterwards.
      
      2) int strings are only converted when necessary (constant evaluation).
      
      3) const are handled directly under Lic.by_pos_op instead of being under
         PREDEF_CALL, which make things easier and more logical.
      28f47082
  19. Mar 05, 2013
  20. Feb 20, 2013
  21. Feb 13, 2013
  22. Feb 06, 2013
  23. Feb 04, 2013
  24. Feb 01, 2013
  25. Jan 31, 2013
  26. Jan 24, 2013
  27. Jan 16, 2013
  28. Dec 20, 2012
  29. Dec 13, 2012
    • Erwan Jahier's avatar
      Some work to plug back the array expansion. · 8d9c3422
      Erwan Jahier authored
      8d9c3422
    • 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
Loading