X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=Robust%2Fsrc%2FAnalysis%2FSSJava%2FLocationInference.java;h=e951c1a970e7b0214c2f7649184dbc0207d76d2a;hb=74da1d0f330468f65e6d141d1732fc1f6e0bb38e;hp=3adfeebea621970b1089b1511113eb256ff72b73;hpb=a7f1174555e6acecd448b544a65898efdc02129a;p=IRC.git diff --git a/Robust/src/Analysis/SSJava/LocationInference.java b/Robust/src/Analysis/SSJava/LocationInference.java index 3adfeebe..e951c1a9 100644 --- a/Robust/src/Analysis/SSJava/LocationInference.java +++ b/Robust/src/Analysis/SSJava/LocationInference.java @@ -2634,6 +2634,7 @@ public class LocationInference { lattice.removeRedundantEdges(); LocationInference.numLocationsSInfer += lattice.getKeySet().size(); + System.out.println(desc + " numPaths=" + lattice.countPaths()); if (desc instanceof ClassDescriptor) { // field lattice @@ -2772,6 +2773,7 @@ public class LocationInference { HierarchyGraph simpleHierarchyGraph = getHierarchyGraph(desc).clone(); simpleHierarchyGraph.setName(desc + "_SIMPLE"); simpleHierarchyGraph.removeRedundantEdges(); + // simpleHierarchyGraph.removeIsolatedNodes(); mapDescriptorToSimpleHierarchyGraph.put(desc, simpleHierarchyGraph); } } @@ -3202,6 +3204,7 @@ public class LocationInference { // if the srcNode is started with the global descriptor // need to set as a skeleton node if (!hasGlobalAccess && srcNode.getDescTuple().startsWith(GLOBALDESC)) { + System.out.println("SRCNODE=" + srcNode); hasGlobalAccess = true; } @@ -3313,8 +3316,8 @@ public class LocationInference { // set hasGloabalAccess true in the method summary. if (hasGlobalAccess) { getMethodSummary(md).setHasGlobalAccess(); + methodGraph.getHNode(GLOBALDESC).setSkeleton(true); } - methodGraph.getHNode(GLOBALDESC).setSkeleton(true); if (ssjava.getMethodContainingSSJavaLoop().equals(md)) { // if the current method contains the event loop