From 6e2e2a9f470411c42bc62227c9772515a2c448d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Pasteur?= Date: Thu, 9 Feb 2012 11:48:36 +0100 Subject: [PATCH] Fixed bug in interference computation To know the variables read by an equation, we should only look at the clock of variables. Otherwise, there could be a problem for node calls that define new clocks. --- compiler/minils/analysis/interference.ml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/compiler/minils/analysis/interference.ml b/compiler/minils/analysis/interference.ml index 2832eb7..daac228 100644 --- a/compiler/minils/analysis/interference.ml +++ b/compiler/minils/analysis/interference.ml @@ -70,7 +70,7 @@ module InterfRead = struct exception Const_extvalue let rec vars_ck acc = function - | Con(_, _, n) -> IvarSet.add (Ivar n) acc + | Con(ck2, _, n) -> IvarSet.add (Ivar n) (vars_ck acc ck2) | Cbase | Cvar { contents = Cindex _ } -> acc | Cvar { contents = Clink ck } -> vars_ck acc ck @@ -118,7 +118,7 @@ module InterfRead = struct | Eiterator (_, _, _, _, _, Some x) -> IvarSet.add (Ivar x) acc | _ -> acc in - e, vars_ct acc e.e_ct + e, acc let rec vars_pat acc = function | Evarpat x -> IvarSet.add (Ivar x) acc