From 79f0c7d22349a8401029fc2fd51c893e7d724b23 Mon Sep 17 00:00:00 2001 From: Arnaud DABY-SEESARAM Date: Tue, 13 Dec 2022 18:15:48 +0100 Subject: [PATCH] [passes] never redefine an input --- src/passes.ml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/passes.ml b/src/passes.ml index 8428d9d..a6d9c66 100644 --- a/src/passes.ml +++ b/src/passes.ml @@ -165,15 +165,17 @@ let chkvar_init_unicity verbose debug : t_nodelist -> t_nodelist option = let h = Hashtbl.create Config.maxvar in - let add_var v = + let add_var n v = match v with - | IVar s -> Hashtbl.add h s 0 - | BVar s -> Hashtbl.add h s 0 - | RVar s -> Hashtbl.add h s 0 + | IVar s -> Hashtbl.add h s n + | BVar s -> Hashtbl.add h s n + | RVar s -> Hashtbl.add h s n in - List.iter add_var (snd node.n_inputs); - List.iter add_var (snd node.n_outputs); - List.iter add_var (snd node.n_local_vars); + let add_var_in = add_var 1 in + let add_var_loc = add_var 0 in + List.iter add_var_in (snd node.n_inputs); + List.iter add_var_loc (snd node.n_outputs); + List.iter add_var_loc (snd node.n_local_vars); (** Usual Equations *)