Skip to content
Snippets Groups Projects
  1. Aug 17, 2015
  2. 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
  3. Apr 10, 2015
  4. Mar 18, 2015
    • Erwan Jahier's avatar
      lic2soc: try a few optimisation wrt Soc.gao scheduling and test opening. · 7d0da0b8
      Erwan Jahier authored
      Indeed, in order to sort Soc.gao, I currently process in 3 stages ;
      1. compute a total ordering of Actions.t according to the deps
      2. transform Actions.t into Soc.gao (List.map)
      3. factorize Soc.gao by looking at consecutive gao that have the same guard
      
      With this change, between steps 1 and 2, I reorder the list of actions
      so that group of independent actions are sorted according to their
      clock. The idea is of course to provide to step 3 more opportunities
      of factorization.
      
      The result is not very convincing yet.
      
      I've also tried to sort the actions wrt their clock before performing
      the toposort. Seems not too bad.
      
      I've kept the old behavior by default though.
      7d0da0b8
  5. Mar 03, 2015
  6. Feb 27, 2015
  7. Feb 09, 2015
  8. 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
  9. 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
  10. Dec 12, 2014
  11. Nov 17, 2014
  12. Oct 09, 2014
  13. Oct 01, 2014
  14. Sep 29, 2014
  15. 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
  16. 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
  17. Mar 25, 2014
  18. Jan 22, 2014
  19. 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
  20. Nov 29, 2013
  21. Nov 28, 2013
Loading