From 65c390b847a1f51c888a4260c5db1259f229230c Mon Sep 17 00:00:00 2001 From: bdemsky Date: Fri, 26 Mar 2010 05:34:56 +0000 Subject: [PATCH] bug fix --- Robust/src/Analysis/Disjoint/DisjointAnalysis.java | 11 ++++++++++- Robust/src/Analysis/Disjoint/ReachGraph.java | 4 ++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/Robust/src/Analysis/Disjoint/DisjointAnalysis.java b/Robust/src/Analysis/Disjoint/DisjointAnalysis.java index da618c50..2e26936e 100644 --- a/Robust/src/Analysis/Disjoint/DisjointAnalysis.java +++ b/Robust/src/Analysis/Disjoint/DisjointAnalysis.java @@ -431,6 +431,8 @@ public class DisjointAnalysis { protected PointerMethod pm; + protected Hashtable hackmap; + // allocate various structures that are not local // to a single class method--should be done once @@ -472,6 +474,8 @@ public class DisjointAnalysis { mapDescriptorToReachGraph = new Hashtable(); + + hackmap = new Hashtable(); } @@ -823,7 +827,12 @@ public class DisjointAnalysis { // such as, do allocation sites need to be aged? rg.merge_diffMethodContext( rgContrib ); - } + } + FlatMethod hackfm=(FlatMethod)fn; + if (hackmap.containsKey(hackfm)) { + rg.merge(hackmap.get(hackfm)); + } + hackmap.put(hackfm, rg); } break; case FKind.FlatOpNode: diff --git a/Robust/src/Analysis/Disjoint/ReachGraph.java b/Robust/src/Analysis/Disjoint/ReachGraph.java index f43d8e35..1ce53745 100644 --- a/Robust/src/Analysis/Disjoint/ReachGraph.java +++ b/Robust/src/Analysis/Disjoint/ReachGraph.java @@ -2141,7 +2141,7 @@ public class ReachGraph { } } } - + /* // test param -> HRN edges, also for( int i = 0; i < fmCallee.numParameters(); ++i ) { @@ -2191,7 +2191,7 @@ public class ReachGraph { } } - } + }*/ -- 2.34.1