Skip to content
Snippets Groups Projects
  1. Nov 28, 2013
  2. Nov 25, 2013
  3. 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
  4. Jun 06, 2013
  5. 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
  6. Jun 04, 2013
  7. Jun 03, 2013
  8. May 31, 2013
  9. May 28, 2013
  10. 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
  11. May 21, 2013
  12. May 17, 2013
  13. May 16, 2013
  14. 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
  15. May 13, 2013
  16. May 10, 2013
  17. May 07, 2013
  18. May 06, 2013
  19. Apr 26, 2013
  20. Apr 25, 2013
  21. Apr 24, 2013
  22. 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
  23. Apr 22, 2013
  24. Apr 17, 2013
  25. Apr 12, 2013
    • Erwan Jahier's avatar
      Add the exit port to ldbg plugin. · 8dd3d736
      Erwan Jahier authored
      Some work to share the conde that is comon to Lutin/Lurette more properly
      via Makefiles and using chmod to avoid editing the wrong files.
      
      + mv the lus2licRun.ml/mli file to the Lurette git repo.
      8dd3d736
    • 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
  26. Apr 10, 2013
  27. Apr 08, 2013
    • Erwan Jahier's avatar
      Some work to prepare the merge with the lurette git repo. · 5316f18a
      Erwan Jahier authored
      I took the data type definition from SocExecValue to define a Data
      module that is a strict extension of the Lutin Data module.
      
      The duplicated Genlex module is now also identical to the one of
      Lurette.
      
      Quite boring, but simple thanks to the ocaml type system.
      5316f18a
Loading