Skip to content
Snippets Groups Projects
  1. 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
  2. Dec 10, 2013
  3. Dec 06, 2013
  4. Dec 04, 2013
  5. Nov 29, 2013
  6. Nov 28, 2013
  7. Nov 25, 2013
  8. 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
  9. Jun 06, 2013
  10. Jun 05, 2013
    • Erwan Jahier's avatar
      Fix the handling of fby in Soc. · 1026bf31
      Erwan Jahier authored
      Indeed, the initialisation of the fby was done when the soc was
      created.  Hence the first fby that was translated was giving its
      initial value to all others forthcoming fby !!!
      
      In order to fix that, I've modified the type of Soc.key so that the
      initial value is part of its key.
      
      Note that currently, it does not work if the initial value is an input.
      1026bf31
  11. Jun 04, 2013
  12. Jun 03, 2013
  13. May 31, 2013
  14. May 28, 2013
  15. May 22, 2013
    • Erwan Jahier's avatar
      Fix a bug when expanding nodes (-en). A Node that calls a node that · 499a3f47
      Erwan Jahier authored
      itself calls another node on a non-trivial clock (i.e., using a when)
      was not producing correct code.
      
      I've fixed this by performing the fix-point on nodes rather than on
      equations. Indeed its more natural and efficient, and it avoid the
      problem above. However, I did not really fix the problem, but just
      turn around it. All tests seems to work fine though.
      
      nb : #FAILS=81->80 (and -2 unresolved, but because I fixed the prog)
      499a3f47
  16. May 21, 2013
  17. May 17, 2013
  18. May 16, 2013
  19. 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
  20. May 13, 2013
  21. May 10, 2013
  22. May 07, 2013
  23. May 06, 2013
  24. Apr 26, 2013
  25. Apr 25, 2013
  26. Apr 24, 2013
  27. 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
Loading