diff --git a/src/socPredef2cHeap.ml b/src/socPredef2cHeap.ml index 91e6570cf990872890292f73c0c88bbc634542ab..e35dbc472d3334a9dbb5d9d599606f116b17b832 100644 --- a/src/socPredef2cHeap.ml +++ b/src/socPredef2cHeap.ml @@ -1,4 +1,4 @@ -(* Time-stamp: <modified the 10/04/2015 (at 17:05) by Erwan Jahier> *) +(* Time-stamp: <modified the 10/04/2015 (at 17:52) by Erwan Jahier> *) open Data open Soc @@ -263,7 +263,7 @@ let (get_iterator : Soc.t -> string -> Soc.t -> int -> string) = (* exported *) let (get_condact : Soc.t -> Soc.t -> var_expr list -> string ) = fun soc condact_soc el -> - let buff = ref "" in + let buff = ref "" in let add str = buff:=!buff^(str^"\n") in let clk = Printf.sprintf "ctx->i0" in @@ -277,12 +277,12 @@ let (get_condact : Soc.t -> Soc.t -> var_expr list -> string ) = add (Soc2cHeap.gen_step_call soc condact_soc vel_out vel_in condact_ctx "step" "") else ( let condact_ctx = - let inst_name = - match soc.instances with - | [inst] -> (id2s (fst inst)) - | _ -> assert false - in - Printf.sprintf "ctx->%s" inst_name + match soc.instances with + | [inst] -> + let _, get_index = Soc2cInstances.to_array soc.instances in + let index = get_index (inst) in + (Printf.sprintf "ctx->%s_tab[%d]" (get_ctx_name condact_soc.key) index) + | _ -> assert false in add (Soc2cHeap.gen_step_call soc condact_soc vel_out vel_in condact_ctx "step" ("&"^condact_ctx)) diff --git a/test/lus2lic.sum b/test/lus2lic.sum index fd4aa8d7b75418afdb56479df31a4c4a3bb19220..16a09392a34e76be592573ccdcc29714ce6850f3 100644 --- a/test/lus2lic.sum +++ b/test/lus2lic.sum @@ -1,5 +1,5 @@ ==> lus2lic0.sum <== -Test Run By jahier on Fri Apr 10 17:45:43 +Test Run By jahier on Fri Apr 10 17:55:35 Native configuration is x86_64-unknown-linux-gnu === lus2lic0 tests === @@ -63,7 +63,7 @@ XFAIL: Test bad programs (assert): test_lus2lic_no_node should_fail/assert/lecte XFAIL: Test bad programs (assert): test_lus2lic_no_node should_fail/assert/s.lus ==> lus2lic1.sum <== -Test Run By jahier on Fri Apr 10 17:45:41 +Test Run By jahier on Fri Apr 10 17:55:39 Native configuration is x86_64-unknown-linux-gnu === lus2lic1 tests === @@ -397,7 +397,7 @@ PASS: gcc -o multipar.exec multipar_multipar.c multipar_multipar_loop.c PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c multipar.lus {} ==> lus2lic2.sum <== -Test Run By jahier on Fri Apr 10 17:45:47 +Test Run By jahier on Fri Apr 10 17:55:31 Native configuration is x86_64-unknown-linux-gnu === lus2lic2 tests === @@ -727,7 +727,7 @@ PASS: gcc -o zzz2.exec zzz2_zzz2.c zzz2_zzz2_loop.c PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c zzz2.lus {} ==> lus2lic3.sum <== -Test Run By jahier on Fri Apr 10 17:45:39 +Test Run By jahier on Fri Apr 10 17:55:37 Native configuration is x86_64-unknown-linux-gnu === lus2lic3 tests === @@ -1230,7 +1230,7 @@ PASS: ./myec2c {-o multipar.c multipar.ec} PASS: /home/jahier/lus2lic/test/../utils/test_lus2lic_no_node multipar.lus {} ==> lus2lic4.sum <== -Test Run By jahier on Fri Apr 10 17:45:45 +Test Run By jahier on Fri Apr 10 17:55:32 Native configuration is x86_64-unknown-linux-gnu === lus2lic4 tests === @@ -1727,11 +1727,11 @@ PASS: /home/jahier/lus2lic/test/../utils/test_lus2lic_no_node zzz2.lus {} =============================== # Total number of failures: 14 lus2lic0.log:testcase ./lus2lic.tests/test0.exp completed in 7 seconds -lus2lic1.log:testcase ./lus2lic.tests/test1.exp completed in 49 seconds -lus2lic2.log:testcase ./lus2lic.tests/test2.exp completed in 76 seconds -lus2lic3.log:testcase ./lus2lic.tests/test3.exp completed in 49 seconds -lus2lic4.log:testcase ./lus2lic.tests/test4.exp completed in 83 seconds +lus2lic1.log:testcase ./lus2lic.tests/test1.exp completed in 66 seconds +lus2lic2.log:testcase ./lus2lic.tests/test2.exp completed in 80 seconds +lus2lic3.log:testcase ./lus2lic.tests/test3.exp completed in 60 seconds +lus2lic4.log:testcase ./lus2lic.tests/test4.exp completed in 87 seconds * Ref time: * Quick time (-j 4): -0.04user 0.02system 1:29.13elapsed 0%CPU (0avgtext+0avgdata 5148maxresident)k -160inputs+0outputs (0major+5541minor)pagefaults 0swaps +0.02user 0.04system 1:29.54elapsed 0%CPU (0avgtext+0avgdata 5188maxresident)k +160inputs+0outputs (0major+5585minor)pagefaults 0swaps diff --git a/test/lus2lic.time b/test/lus2lic.time index 1ccb85592ed52701e9fb3205b2f7d158f1578a6a..8893962cf6c7a30f10cb866c384b34d3965bf37c 100644 --- a/test/lus2lic.time +++ b/test/lus2lic.time @@ -1,9 +1,9 @@ lus2lic0.log:testcase ./lus2lic.tests/test0.exp completed in 7 seconds -lus2lic1.log:testcase ./lus2lic.tests/test1.exp completed in 49 seconds -lus2lic2.log:testcase ./lus2lic.tests/test2.exp completed in 76 seconds -lus2lic3.log:testcase ./lus2lic.tests/test3.exp completed in 49 seconds -lus2lic4.log:testcase ./lus2lic.tests/test4.exp completed in 83 seconds +lus2lic1.log:testcase ./lus2lic.tests/test1.exp completed in 66 seconds +lus2lic2.log:testcase ./lus2lic.tests/test2.exp completed in 80 seconds +lus2lic3.log:testcase ./lus2lic.tests/test3.exp completed in 60 seconds +lus2lic4.log:testcase ./lus2lic.tests/test4.exp completed in 87 seconds * Ref time: * Quick time (-j 4): -0.04user 0.02system 1:29.13elapsed 0%CPU (0avgtext+0avgdata 5148maxresident)k -160inputs+0outputs (0major+5541minor)pagefaults 0swaps +0.02user 0.04system 1:29.54elapsed 0%CPU (0avgtext+0avgdata 5188maxresident)k +160inputs+0outputs (0major+5585minor)pagefaults 0swaps