Skip to content
Snippets Groups Projects
  1. Feb 09, 2015
  2. Jan 14, 2015
    • Erwan Jahier's avatar
      Fix a bug when using -esa -en -2c on programs with assert · 79e85ff2
      Erwan Jahier authored
      Report by willie (cf mail of 8/10/2014 to get the file)
      
      file:/tmp/modes3x2.lus
      
      lus2lic -esa -en -2c /tmp/modes3x2.lus -n modes3x2
      
      But it gives an error of:
      Error. in file "/mnt/A/wsept/modes3x2_pre_orig_lus2lic_en_esa/modes3x2.lus",
      line 74, col 8 to 8, token '#': only one operator per equation is allowed
      (v04_0, v04_1).
      
      Which is the line:
      assert #(on_off, toggle);
      
      -----------------------------------------------------------------
      
      Actually, refuse programs that uses "#" or "nor" run with -esa and
      -2c|-exec
      
      That means that willie program is now rejected.
      
      Nevertheless, that change migth fix some other programs (that uses
      arrays, and used with -esa and -exec or -2c).
      79e85ff2
  3. Jan 07, 2015
    • Erwan Jahier's avatar
      Merge does not generate soc anymore ! · fcf73b92
      Erwan Jahier authored
      Also fix a bug in Lic2soc.make_e2a_elt where some deps and some
      actions were lost. Actually, this bug ought to be triggered only with
      nested calls. So this affects only programs executed via the
      -knc/-keep-nested-calls option. and -2c is not supposed to work in
      conjunction with -knc ! Hence this fix does not fix anything. But
      still it fixes potentially future code if I (or someone else) decide
      to handle nested calls in the lic one day.
      fcf73b92
  4. Dec 12, 2014
  5. Nov 17, 2014
  6. Oct 09, 2014
  7. Oct 01, 2014
  8. Sep 29, 2014
  9. Aug 14, 2014
    • Erwan Jahier's avatar
      lic2soc: fix the translation of the current operator into SOC. · d3061085
      Erwan Jahier authored
      nb : the -exec mode was working because I did not use the generated soc,
      which was completely wrong.
      
      Note that to do that, I have modified the CURRENT variant of
      Lic.val_exp, to attach it the clock the current holds on. Indeed, the
      clock is mandatory to generated correct code...
      
      In an ideal world, this clock information may have explicitely been
      set by the user ("current(clk_of_X,X)" instead of "current(X)"), but
      for historical reason, it is not the case.
      
      Hence, this information is added as soon as it is available, namely,
      during clock checking.
      d3061085
  10. Jun 26, 2014
    • Erwan Jahier's avatar
      Make sure that L2lRmPoly removes every overloaded expression. · 7f808896
      Erwan Jahier authored
      e.g., by replacing "plus" by "iplus" or "rplus"
      
      Hence now the following is accepted :
         res = map<<+,  N>>(x, a, b);
      
      but still not
      
        a_or_b = map<<Lustre::if,  N>>(x, a, b);
      7f808896
    • Erwan Jahier's avatar
      Reject user defined polymorphic node. · 716f0d5b
      Erwan Jahier authored
      For instance,
        node toto = map<<Lustre::if,  N>>(x, a, b);
      is rejected.
      
      The problem with this change is that we now also reject equations such as
         res = map<<+,  N>>(x, a, b);
      
      which could be avoided. Probably L2lRmPoly does its job partially.
      716f0d5b
  11. Mar 25, 2014
  12. Jan 22, 2014
  13. 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
  14. Nov 29, 2013
  15. Nov 28, 2013
Loading