Skip to content
Snippets Groups Projects
  1. Oct 08, 2018
  2. Jul 03, 2018
  3. Jul 02, 2018
  4. Mar 28, 2018
  5. Mar 25, 2018
  6. Mar 21, 2018
  7. Feb 22, 2018
  8. Sep 27, 2017
  9. 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
  10. Jul 04, 2017
    • erwan's avatar
      More work on the -eeb option. · a6fab49a
      erwan authored
      To do that, I have created a new dedicated module L2lExpandEnum, that
      actually also deals with -eei (which was probably wrong, even if I
      have not counter-exemple).
      
      Use 1-hot encoding instead of log-encoding
      
      I've fixed a bug in L2lExpandArrays that occurs on equation such as
        some_bool = (some_array1 = some_array2);
      
      Also, I've rewritten Lv6Compile for more readability
      
      Remove duplicated code when using SocMap.find and co
      a6fab49a
  11. Jun 27, 2017
  12. Oct 25, 2016
  13. Sep 09, 2016
  14. Mar 10, 2016
  15. Feb 03, 2016
    • Erwan Jahier's avatar
      Rationnalize the use of time-profiling printing. · 938258cf
      Erwan Jahier authored
      by
      - remove duplication (add a profile_info function ine Lv6Verbose
      - be more efficient (computing Sys.time only when necessary
      - control the time-profiling printing via the -dbg flag "profile", and
        not the verbosity level
      938258cf
  16. Jan 14, 2016
  17. Sep 23, 2015
  18. Aug 20, 2015
  19. Aug 17, 2015
  20. Jul 10, 2015
    • Erwan Jahier's avatar
      The nonreg test process was missing some failures. · ccdf2a78
      Erwan Jahier authored
      More precisely, issuing an "exit 2" is not enough for the
      should_work proc in test/site.exp to state that the test fails.
      
      That fix revealed a certain number of bad programs.
      Some were not really wrong ; there were just not respecting the
      naming convention used to automated the test (i.e., main node name =
      file name).
      
      It also releaved a real bug due to the fact that type
      instanciatiation is not propagated during model instanciatiation,
      where creates a loop between (Lic2soc.process_node and
      Lic2soc.soc_of_node). Indeed it searches in the soc the table for an
      abstract profile.
      ccdf2a78
  21. Jun 23, 2015
  22. May 22, 2015
  23. Feb 27, 2015
  24. Jan 19, 2015
    • Erwan Jahier's avatar
      Add a --optimize-ite/-oite option that transforms if/then/else into merge when possible. · d783b03e
      Erwan Jahier authored
      Indeed it is possible when each branch of the ite updates no memory.
      This is done in the new L2lOptimIte module.
      
      For the time being, it does detect when the node has no memory. It
      only looks at the declaration: nodes have memory, and not functions.
      
      I should infer that information and raise warnings or errors if what
      I infer is not compatible with waht is declared (will come later).
      
      Also split ActionsDep into ActionsDep and Action.
      
      Also fix a bug in L2lsplit where deeply nested (>2) merge were not
      splitted.
      d783b03e
  25. Sep 04, 2014
  26. Aug 19, 2014
    • Erwan Jahier's avatar
      lus2lic --gen-autotest : change the strategy to compare real values en generated oracles. · f02e8b1b
      Erwan Jahier authored
      Indeed, for big integers, looking at |x-x'|<eps leads to false
      positive, because of the precision (*); it is better to to look at
      |1-x/x'|<eps
      
      (*) the precision (-p 6) influence the comparison, because the SUT
      currently sends its result via a socket and truncate the result
      (which is probably a bad idea).
      
      nb : the exec time explose (x3), but for an external (unknown) reason
      (undoing the change leads to the same exec time ~800s).
      f02e8b1b
  27. Jun 10, 2014
  28. Jun 02, 2014
  29. May 30, 2014
  30. May 12, 2014
  31. Mar 25, 2014
  32. Jan 22, 2014
  33. 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
  34. Dec 10, 2013
  35. Dec 04, 2013
  36. Nov 29, 2013
  37. May 28, 2013
  38. 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
  39. May 10, 2013
  40. May 06, 2013
Loading