- Mar 21, 2022
-
-
erwan authored
The dependency on the clock was lost when the enum is translated into an integer (because some expression were still refering to the enum type). The fix was to index VarMap.t by string instead of Soc.var_expr in ActionsDeps.
-
- Aug 29, 2019
-
-
erwan authored
Remove a lot of warnings (considered as errors by dune).
-
- Jul 12, 2017
-
-
erwan authored
-
- Mar 18, 2015
-
-
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.
-
- Jan 19, 2015
-
-
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.
-
- Oct 06, 2014
-
-
Erwan Jahier authored
Indeed, computing the dependencies and choosing an order for actions (that may optimize test openning in the near futurea) are 2 different things.
-
- Jul 09, 2014
-
-
Erwan Jahier authored
-
- Dec 11, 2013
-
-
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.
-
- Apr 08, 2013
-
-
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.
-
- Apr 03, 2013
-
-
Erwan Jahier authored
nb : programs do run, but I did not check that they run correctly... Also fix a regression introduced in the previous change where incorrect ec code was generated for diese.
-
- Mar 20, 2013
-
-
Erwan Jahier authored
-
- Mar 19, 2013
-
-
Erwan Jahier authored
-
- Feb 25, 2013
-
-
Erwan Jahier authored
Indeed, the data structure in output of the lis2loc parser was very similar to Lic.t/LicPrg.t. Hence, this shunt. At this stage it compiles, but it's untested and does not work.
-