diff --git a/_oasis b/_oasis index 1eedf72c6f0bade6a146d914456189a011c1bcf8..c4801664828246b89e4be57c94bbdbbbda161bb1 100644 --- a/_oasis +++ b/_oasis @@ -1,6 +1,6 @@ OASISFormat: 0.4 Name: lustre-v6 -Version: 1.641 +Version: 1.642 Synopsis: The Lustre V6 Verimag compiler Description: This package contains: - lus2lic: the (current) name of the compiler (and interpreter via -exec). diff --git a/src/l2lSplit.ml b/src/l2lSplit.ml index 92237e2988e67f6e992531097c6a01697298f83a..d9e1f00ced8964625225edc5577fe4e42f244f78 100644 --- a/src/l2lSplit.ml +++ b/src/l2lSplit.ml @@ -11,9 +11,7 @@ open Lxm open Lic let dbg = (Lv6Verbose.get_flag "split") -let info msg = - let t = Sys.time() in - Lv6Verbose.exe ~flag:dbg (fun () -> Printf.eprintf "%4.4f: %s%!" t msg) +let profile_info = Lv6Verbose.profile_info (********************************************************************************) @@ -352,7 +350,7 @@ and split_node (opt:Lv6MainArgs.t) (n: Lic.node_exp) : Lic.node_exp = | BodyLic b -> let loc = match n.loclist_eff with None -> [] | Some l -> l in let (neqs, nv) = List.fold_left (split_eq_acc) ([], loc) b.eqs_eff in - info (Printf.sprintf "Split %i equations into %i ones\n" + profile_info (Printf.sprintf "Split %i equations into %i ones\n" (List.length b.eqs_eff)(List.length neqs)); let (nasserts,neqs, nv) = @@ -396,7 +394,7 @@ let rec doit (opt:Lv6MainArgs.t) (inprg : LicPrg.t) : LicPrg.t = (** TRAITE LES NOEUDS : *) let rec do_node k (ne:Lic.node_exp) = (* On passe en parametre un constructeur de nouvelle variable locale *) - info (Printf.sprintf "#DBG: split equations of '%s'\n" (Lic.string_of_node_key k)); + profile_info (Printf.sprintf "#DBG: split equations of '%s'\n" (Lic.string_of_node_key k)); let ne' = split_node opt ne in res := LicPrg.add_node k ne' !res in diff --git a/src/lic2soc.ml b/src/lic2soc.ml index eac353b8937c5a6995e27f257dbc75ed6eaa2bb5..cff1bf7491deb0cb20ffb8131a8fbca471f6c7bd 100644 --- a/src/lic2soc.ml +++ b/src/lic2soc.ml @@ -1,4 +1,4 @@ -(** Time-stamp: <modified the 02/02/2016 (at 15:40) by Erwan Jahier> *) +(** Time-stamp: <modified the 03/02/2016 (at 15:10) by Erwan Jahier> *) (* XXX ce module est mal écrit. A reprendre. (R1) *) @@ -696,16 +696,13 @@ let (actions_of_equation: Lxm.t -> Soc.tbl -> ctx -> Lic.eq_info -> (*********************************************************************************) open Soc -let info msg = - let t = Sys.time() in - Lv6Verbose.exe ~level:1 (fun () -> Printf.eprintf "%4.4f: %s%!" t msg; flush stderr) - +let profile_info = Lv6Verbose.profile_info let rec f: (LicPrg.t -> Lic.node_key -> Soc.key * Soc.tbl) = fun prog mnk -> let rec (process_node : Lic.node_key -> Soc.tbl -> Soc.key * Soc.tbl) = fun nk soc_tbl -> - info ("Lic2soc.process_node "^(Lic.string_of_node_key nk)^"\n"); + profile_info ("Lic2soc.process_node "^(Lic.string_of_node_key nk)^"\n"); let node = match LicPrg.find_node prog nk with | None -> @@ -799,7 +796,7 @@ let rec f: (LicPrg.t -> Lic.node_key -> Soc.key * Soc.tbl) = (** Produit des soc de noeuds. *) and (soc_of_node: LicPrg.t -> Lic.node_exp -> Soc.tbl -> (ctx * Soc.t * Soc.tbl) option) = fun licprg node soc_tbl -> - info ("Lic2soc.soc_of_node..."^(Lic.string_of_node_key node.node_key_eff)^"\n"); + profile_info ("Lic2soc.soc_of_node..."^(Lic.string_of_node_key node.node_key_eff)^"\n"); let io_list = node.Lic.inlist_eff @ node.Lic.outlist_eff in let io_type = List.map (fun vi -> lic_to_data_type vi.var_type_eff) io_list in let soc_key = make_soc_key_of_node_key node.Lic.node_key_eff None io_type in @@ -807,7 +804,7 @@ let rec f: (LicPrg.t -> Lic.node_key -> Soc.key * Soc.tbl) = let ctx = create_context licprg in let (soc_of_body: Lic.node_body -> Soc.tbl -> (ctx * Soc.t * Soc.tbl) option) = fun b soc_tbl -> - info "Lic2soc.soc_of_node: computing actions...\n"; + profile_info "Lic2soc.soc_of_node: computing actions...\n"; let ctx, actions, instances, deps = (* on itere sur la liste des équations *) List.fold_left @@ -820,15 +817,15 @@ let rec f: (LicPrg.t -> Lic.node_key -> Soc.key * Soc.tbl) = b.eqs_eff in (* Construction des dépendances entre les expressions *) - info "Lic2soc.soc_of_node: computing dependencies...\n"; + profile_info "Lic2soc.soc_of_node: computing dependencies...\n"; let all_deps = ActionsDeps.build_data_deps_from_actions lic_to_data_type deps actions in Lv6Verbose.exe ~flag:dbg (fun () -> print_string (ActionsDeps.to_string all_deps); flush stdout); - info "SortActions.f: sorting actions...\n"; + profile_info "SortActions.f: sorting actions...\n"; let gaol = SortActions.f actions all_deps lxm in - info "Lic2soc.soc_of_node: actions sorted. \n"; + profile_info "Lic2soc.soc_of_node: actions sorted. \n"; let (locals: Soc.var list) = match node.Lic.loclist_eff with | None -> [] @@ -848,7 +845,7 @@ let rec f: (LicPrg.t -> Lic.node_key -> Soc.key * Soc.tbl) = in let (soc_of_metaop: Lic.node_key -> Soc.tbl -> (ctx * Soc.t * Soc.tbl) option) = fun nk soc_tbl -> - info "Lic2soc.soc_of_metaop...\n"; + profile_info "Lic2soc.soc_of_metaop...\n"; match snd (fst nk), List.sort compare (snd nk) with | ("map"|"red"|"fill"|"fillred"|"fold"),[ ConstStaticArgLic(_,Int_const_eff(c)); NodeStaticArgLic(_,iter_node)] diff --git a/src/licTab.ml b/src/licTab.ml index eb26d014e17c56f8a484f5d87198e3e36f3d0d89..d19e4e1b917f6035c3ecdcbd46fa78a35eeafc93 100644 --- a/src/licTab.ml +++ b/src/licTab.ml @@ -1,4 +1,4 @@ -(* Time-stamp: <modified the 03/02/2016 (at 14:18) by Erwan Jahier> *) +(* Time-stamp: <modified the 03/02/2016 (at 15:10) by Erwan Jahier> *) open Lxm @@ -13,9 +13,7 @@ let dbg = (Lv6Verbose.get_flag "lazyc") let finish_me msg = print_string ("\n\tXXX licTab:"^msg^" -> finish me!\n") -let info msg = - let t = Sys.time() in - Lv6Verbose.exe ~level:1 (fun () -> Printf.eprintf "%4.4f: %s%!" t msg) +let profile_info = Lv6Verbose.profile_info (******************************************************************************) (** Returns the ident on which the recursion was detected, plus an execution @@ -387,7 +385,7 @@ module TopoSortVars = let (sort_vars : Lxm.t -> AstCore.node_vars-> Lv6Id.t list -> Lv6Id.t list) = fun lxm vars l -> (* we sort vars according to their clock deps *) - info "LicTab.sort_vars\n"; + profile_info "LicTab.sort_vars\n"; let tbl = dep_star lxm l vars in TopoSortVars.f tbl l @@ -801,7 +799,7 @@ and (node_check_interface_do: t -> Lic.node_key -> Lxm.t -> (node_def: AstCore.node_info srcflagged) : Lic.node_exp = (* START node_check_do *) - info "node_check_do\n"; + profile_info "node_check_do\n"; ( Lv6Verbose.exe ~flag:dbg (fun () -> Printf.printf "#DBG: ENTERING node_check_do '%s'\n (%s)\n" @@ -1035,7 +1033,7 @@ and (node_check_interface_do: t -> Lic.node_key -> Lxm.t -> try List.map (fun id -> List.assoc id tab) l_id with Not_found -> assert false in - info "LicTab.unsort\n"; + profile_info "LicTab.unsort\n"; let inlist2 = unsort vars.inlist inlist and outlist2 = unsort vars.outlist outlist in { @@ -1399,7 +1397,7 @@ let compile_all (this:t) : t = let compile_node (this:t) (main_node:Lv6Id.idref) : t = (* la clée "absolue" du main node (pas d'args statiques) *) let main_node_key = node_key_of_idref main_node in - info "LicTab.compile_node\n"; + profile_info "LicTab.compile_node\n"; Lv6Verbose.printf "-- MAIN NODE: \"%s\"\n" (LicDump.string_of_node_key_rec false main_node_key); diff --git a/src/lv6Compile.ml b/src/lv6Compile.ml index 9aa33fc32bec19891f7ce3b0ad7273aa681c41e7..e38516c78a376d0b75047ba0e43e211a9c171ef0 100644 --- a/src/lv6Compile.ml +++ b/src/lv6Compile.ml @@ -1,4 +1,4 @@ -(* Time-stamp: <modified the 02/02/2016 (at 15:44) by Erwan Jahier> *) +(* Time-stamp: <modified the 03/02/2016 (at 15:09) by Erwan Jahier> *) open Lxm open Lv6errors @@ -8,14 +8,12 @@ open AstCore (* get the first package in the package/model list *) let dbg = (Lv6Verbose.get_flag "ast") -let info msg = - let t = Sys.time() in - Lv6Verbose.exe ~level:1 (fun () -> Printf.eprintf "%4.4f: %s%!" t msg) +let profile_info = Lv6Verbose.profile_info let (doit : Lv6MainArgs.t -> AstV6.pack_or_model list -> Lv6Id.idref option -> LicPrg.t) = fun opt srclist main_node -> (* let t0 = Sys.time() in *) - info "Lv6Compile: Start!\n"; + profile_info "Lv6Compile: Start!\n"; let syntax_tab = AstTab.create srclist in (* Pour chaque package, on a un solveur de références globales, pour les types, const et node : @@ -31,7 +29,7 @@ let (doit : Lv6MainArgs.t -> AstV6.pack_or_model list -> Lv6Id.idref option -> L let lic_tab = LicTab.create syntax_tab in Lv6Verbose.exe ~flag:dbg (fun () -> AstTab.dump syntax_tab); - info "Lv6Compile: Compiling into lic\n"; + profile_info "Lv6Compile: Compiling into lic\n"; let lic_tab = match main_node with | None -> LicTab.compile_all lic_tab | Some main_node -> @@ -40,26 +38,26 @@ let (doit : Lv6MainArgs.t -> AstV6.pack_or_model list -> Lv6Id.idref option -> L else LicTab.compile_node lic_tab main_node in - info "Converting to lic_prg...\n"; + profile_info "Converting to lic_prg...\n"; let zelic = LicTab.to_lic_prg lic_tab in if opt.Lv6MainArgs.print_interface then zelic else ( - info "Check safety and memory declarations...\n"; + profile_info "Check safety and memory declarations...\n"; if Lv6MainArgs.global_opt.Lv6MainArgs.kcg then L2lCheckKcgKeyWord.doit zelic else L2lCheckMemSafe.doit zelic; let zelic = if not opt.Lv6MainArgs.optim_ite then zelic else ( - info "Optimizing if/then/else...\n"; + profile_info "Optimizing if/then/else...\n"; L2lOptimIte.doit zelic) in let zelic = (* élimination polymorphisme surcharge *) - info "Removing polymorphism...\n"; + profile_info "Removing polymorphism...\n"; L2lRmPoly.doit zelic in let zelic = if not opt.Lv6MainArgs.inline_iterator then zelic else ( - info "Inlining iterators...\n"; + profile_info "Inlining iterators...\n"; (* to be done before array expansion otherwise they won't be expanded *) L2lExpandMetaOp.doit zelic ) @@ -77,7 +75,7 @@ let (doit : Lv6MainArgs.t -> AstV6.pack_or_model list -> Lv6Id.idref option -> L only if we have one op per equation...*) then ( (* Split des equations (1 eq = 1 op) *) - info "One op per equations...\n"; + profile_info "One op per equations...\n"; L2lSplit.doit opt zelic) else zelic @@ -115,7 +113,7 @@ let (doit : Lv6MainArgs.t -> AstV6.pack_or_model list -> Lv6Id.idref option -> L [] in assert (nodes_to_keep <> []); - info ("Expanding the following node calls: " + profile_info ("Expanding the following node calls: " ^(String.concat "," (List.map Lv6Id.string_of_idref ids_to_expand))^"\n"); L2lExpandNodes.doit nodes_to_keep zelic ) @@ -125,7 +123,7 @@ let (doit : Lv6MainArgs.t -> AstV6.pack_or_model list -> Lv6Id.idref option -> L (* Array and struct expansion: to do after polymorphism elimination and after node expansion *) let zelic = if not opt.Lv6MainArgs.expand_arrays then zelic else ( - info "Expanding arrays...\n"; + profile_info "Expanding arrays...\n"; L2lExpandArrays.doit zelic) in (* alias des types array XXX fait partir lic2soc en boucle à @@ -133,17 +131,17 @@ let (doit : Lv6MainArgs.t -> AstV6.pack_or_model list -> Lv6Id.idref option -> L (cf commentaire au début du module). Bon, j'enleve, car j'en ai pas vraiment besoin en plus. - info "Aliasing arrays...\n"; + profile_info "Aliasing arrays...\n"; let zelic = L2lAliasType.doit zelic in *) (* Currently only works in this mode *) if Lv6MainArgs.global_opt.Lv6MainArgs.ec then ( - info "Check loops...\n"; + profile_info "Check loops...\n"; L2lCheckLoops.doit zelic ); - info "Check unique outputs...\n"; + profile_info "Check unique outputs...\n"; L2lCheckOutputs.doit zelic; - info "Lic Compilation done!\n"; + profile_info "Lic Compilation done!\n"; zelic ) diff --git a/src/lv6Verbose.ml b/src/lv6Verbose.ml index 14e0d9b784cf7d40d3a7161bd5bae09f7b792bb3..98175b49b92c316a769e172fa2ebb54d3ec68159 100644 --- a/src/lv6Verbose.ml +++ b/src/lv6Verbose.ml @@ -105,3 +105,9 @@ let put s = ( *) (* put "%d %s %d\n" 42 "toto" 43; flush stderr;; *) + + +let prof = get_flag "profile" + +let profile_info msg = + exe ~flag:prof (fun () -> Printf.eprintf "%4.4f: %s%!" (Sys.time()) msg) diff --git a/src/lv6Verbose.mli b/src/lv6Verbose.mli index 6eb897f998609edd9ebbae91aaecf14113e1d482..f412b92ae401eac580fef87b83edffb42ff7798f 100644 --- a/src/lv6Verbose.mli +++ b/src/lv6Verbose.mli @@ -46,3 +46,5 @@ val printf : ?level:int -> ?flag:flag -> ('a, unit, string, unit) format4 -> 'a val put : ?level:int -> ?flag:flag -> ('a, unit, string, unit) format4 -> 'a val print_string : ?level:int -> ?flag:flag -> string -> unit val exe : ?level:int -> ?flag:flag -> (unit -> unit) -> unit + +val profile_info : string -> unit diff --git a/src/lv6version.ml b/src/lv6version.ml index bce7e48374a5f665384af079e27f52ebe6374de4..d535d7faed1f83b3ab9a2fa7c95d9cb76a4855a2 100644 --- a/src/lv6version.ml +++ b/src/lv6version.ml @@ -1,7 +1,7 @@ (** Automatically generated from Makefile *) let tool = "lus2lic" let branch = "master" -let commit = "641" -let sha_1 = "b57372e15caf72a8958ade4e74927fd97f890766" +let commit = "642" +let sha_1 = "196914a31f29b1ebabae08ac5426824865f1d323" let str = (branch ^ "." ^ commit ^ " (" ^ sha_1 ^ ")") let maintainer = "jahier@imag.fr" diff --git a/src/main.ml b/src/main.ml index 19229a25800c4da3a0bc90df924669aaa9b687e0..de9a2ff81971ebfd3b1d65c9220595f0c11ea0bc 100644 --- a/src/main.ml +++ b/src/main.ml @@ -1,4 +1,4 @@ -(* Time-stamp: <modified the 14/01/2016 (at 10:42) by Erwan Jahier> *) +(* Time-stamp: <modified the 03/02/2016 (at 15:09) by Erwan Jahier> *) open Lv6Verbose open AstV6 @@ -232,10 +232,7 @@ tel output_string stdout (oracle_file_name ^" generated.\n"); flush stdout -let info msg = - let t = Sys.time() in - Lv6Verbose.exe ~level:1 (fun () -> Printf.eprintf "%4.4f: %s%!" t msg; flush stderr) - +let profile_info = Lv6Verbose.profile_info let main () = ( (* Lv6Compile.init_appli () ; *) @@ -258,7 +255,7 @@ let main () = ( let lic_prg = Lv6Compile.doit opt nsl main_node in if opt.print_interface then ( gen_rif_interface lic_prg main_node opt; - info "bye!"; + profile_info "bye!"; my_exit opt 0 ); if opt.Lv6MainArgs.gen_autotest then @@ -273,14 +270,14 @@ let main () = ( if LicPrg.node_exists lic_prg nk then ( print_string ("WARNING: No main node is specified. I'll try with " ^ name ^"\n"); flush stdout; - info "Start compiling to soc...\n"; + profile_info "Start compiling to soc...\n"; let msk,zesoc = Lic2soc.f lic_prg nk in - info "Soc Compilation done.\n"; + profile_info "Soc Compilation done.\n"; if opt.gen_c then ( - info "Start generating C code...\n"; + profile_info "Start generating C code...\n"; Soc2c.f opt msk zesoc lic_prg); if opt.exec then ( - info "Start interpreting soc...\n"; + profile_info "Start interpreting soc...\n"; SocExec.f opt zesoc msk) ) else ( print_string ("Error: no node is specified, cannot exec.\nbye\n"); @@ -289,16 +286,16 @@ let main () = ( ) ) | Some main_node -> - info "Start compiling to soc...\n"; + profile_info "Start compiling to soc...\n"; let msk, zesoc = Lic2soc.f lic_prg (Lic.node_key_of_idref main_node) in - info "Soc Compilation done. \n"; + profile_info "Soc Compilation done. \n"; if opt.gen_c then ( - info "Start generating C code...\n"; + profile_info "Start generating C code...\n"; Soc2c.f opt msk zesoc lic_prg); if opt.exec then ( - info "Start interpreting soc...\n"; + profile_info "Start interpreting soc...\n"; SocExec.f opt zesoc msk) ) else ( LicPrg.to_file opt lic_prg main_node diff --git a/src/socExec.ml b/src/socExec.ml index 57ac9a5d72d31dee1fb8ccbca34a05f4cedb5c45..6dcb1cd01b79bbce9044e7371dd60f80ce989e21 100644 --- a/src/socExec.ml +++ b/src/socExec.ml @@ -1,10 +1,11 @@ -(* Time-stamp: <modified the 25/01/2016 (at 11:13) by Erwan Jahier> *) +(* Time-stamp: <modified the 03/02/2016 (at 15:07) by Erwan Jahier> *) open Soc open Data open SocExecValue -let dbg = (Lv6Verbose.get_flag "exec") +let dbg = Lv6Verbose.get_flag "exec" +let profile_info = Lv6Verbose.profile_info let (assign_expr : ctx -> var_expr -> var_expr -> ctx) = fun ctx ve_in ve_out -> (* ve_out := ve_in (in ctx) *) @@ -29,6 +30,7 @@ let (array_index : int -> var -> var_expr) = let rec (soc_step : Soc.step_method -> Soc.tbl -> Soc.t -> SocExecValue.ctx -> SocExecValue.ctx) = fun step soc_tbl soc ctx -> + profile_info ("SocExec.soc_step \n"); let soc_name,_,_ = soc.key in let ctx = match step.impl with @@ -170,6 +172,7 @@ and (do_gao : Lxm.t -> Soc.tbl -> SocExecValue.ctx -> gao -> SocExecValue.ctx) and (do_step : Lv6Id.t -> step_method -> SocExecValue.ctx -> Soc.tbl -> Soc.t -> var_expr list -> var_expr list -> SocExecValue.ctx) = fun name step ctx soc_tbl soc vel_in vel_out -> + profile_info ("SocExec.do_step "^name^"\n"); let soc_in_vars, soc_out_vars = soc.profile in let step_in_vars = filter_params soc soc_in_vars step.idx_ins in let step_out_vars = filter_params soc soc_out_vars step.idx_outs in diff --git a/src/sortActions.ml b/src/sortActions.ml index 6b974b4df57fd454b4bd0bbdb21302124101e654..e8ff65d017eed369167a5a39876c01750f686c9b 100644 --- a/src/sortActions.ml +++ b/src/sortActions.ml @@ -1,13 +1,10 @@ -(** Time-stamp: <modified the 03/02/2016 (at 10:03) by Erwan Jahier> *) +(** Time-stamp: <modified the 03/02/2016 (at 15:09) by Erwan Jahier> *) (** topological sort of actions (that may optimize test openning) *) open ActionsDeps -let info msg = - let t = Sys.time() in - Lv6Verbose.exe ~level:1 (fun () -> Printf.eprintf "%4.4f: %s%!" t msg; flush stderr) - +let profile_info = Lv6Verbose.profile_info (*********************************************************************************) module TopoSortActions = @@ -23,7 +20,7 @@ module TopoSortActions = let (topo_sort : Action.t list -> ActionsDeps.t -> Action.t list) = fun actions stbl -> - info "topo_sort...\n"; + profile_info "topo_sort...\n"; TopoSortActions.f stbl actions @@ -90,11 +87,11 @@ let (f : Action.t list -> ActionsDeps.t -> Lxm.t -> Soc.gao list) = (* => la liste d'actions en entrée contient des doublons ! *) try match global_opt.schedul_mode with | Simple -> ( - info "SortActions.f: topo_sort...\n"; + profile_info "SortActions.f: topo_sort...\n"; let actions = topo_sort actions deps in - info "SortActions.f: gao_of_action...\n"; + profile_info "SortActions.f: gao_of_action...\n"; let gaol = List.map gao_of_action actions in - info "SortActions.f: optimize_test_openning actions...\n"; + profile_info "SortActions.f: optimize_test_openning actions...\n"; optimize_test_openning gaol deps ) | Sort -> ( (* experimental scheduling *) diff --git a/test/lus2lic.sum b/test/lus2lic.sum index 7abaf73017c134c42e84a4fac28115b95ad80b37..9b4e6a50a849acbd621fc6baf36980d0eeeabbd8 100644 --- a/test/lus2lic.sum +++ b/test/lus2lic.sum @@ -1,5 +1,5 @@ ==> lus2lic0.sum <== -Test Run By jahier on Wed Feb 3 14:35:34 +Test Run By jahier on Wed Feb 3 15:16:07 Native configuration is x86_64-unknown-linux-gnu === lus2lic0 tests === @@ -64,7 +64,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 Wed Feb 3 14:35:34 +Test Run By jahier on Wed Feb 3 15:16:08 Native configuration is x86_64-unknown-linux-gnu === lus2lic1 tests === @@ -396,7 +396,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 Wed Feb 3 14:35:36 +Test Run By jahier on Wed Feb 3 15:16:23 Native configuration is x86_64-unknown-linux-gnu === lus2lic2 tests === @@ -741,7 +741,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 Wed Feb 3 14:35:36 +Test Run By jahier on Wed Feb 3 15:17:09 Native configuration is x86_64-unknown-linux-gnu === lus2lic3 tests === @@ -1243,7 +1243,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 Wed Feb 3 14:35:38 +Test Run By jahier on Wed Feb 3 15:17:23 Native configuration is x86_64-unknown-linux-gnu === lus2lic4 tests === @@ -1764,12 +1764,14 @@ PASS: /home/jahier/lus2lic/test/../utils/test_lus2lic_no_node zzz2.lus {} # of unexpected failures 4 =============================== # Total number of failures: 23 -lus2lic0.log:testcase ./lus2lic.tests/test0.exp completed in 1 seconds -lus2lic1.log:testcase ./lus2lic.tests/test1.exp completed in 21 seconds -lus2lic2.log:testcase ./lus2lic.tests/test2.exp completed in 50 seconds -lus2lic3.log:testcase ./lus2lic.tests/test3.exp completed in 18 seconds -lus2lic4.log:testcase ./lus2lic.tests/test4.exp completed in 54 seconds +lus2lic0.log:testcase ./lus2lic.tests/test0.exp completed in 0 seconds +lus2lic1.log:testcase ./lus2lic.tests/test1.exp completed in 15 seconds +lus2lic2.log:testcase ./lus2lic.tests/test2.exp completed in 46 seconds +lus2lic3.log:testcase ./lus2lic.tests/test3.exp completed in 14 seconds +lus2lic4.log:testcase ./lus2lic.tests/test4.exp completed in 48 seconds * Ref time: +0.04user 0.03system 2:03.41elapsed 0%CPU (0avgtext+0avgdata 5200maxresident)k +0inputs+0outputs (0major+5562minor)pagefaults 0swaps * Quick time (-j 4): -0.03user 0.02system 0:57.63elapsed 0%CPU (0avgtext+0avgdata 5140maxresident)k -0inputs+0outputs (0major+5592minor)pagefaults 0swaps +0.05user 0.01system 0:54.40elapsed 0%CPU (0avgtext+0avgdata 5168maxresident)k +0inputs+0outputs (0major+5581minor)pagefaults 0swaps