OSDN Git Service

Removed unused files.
authort-hatano <tnotawa@gmail.com>
Tue, 22 Mar 2016 14:45:22 +0000 (23:45 +0900)
committert-hatano <tnotawa@gmail.com>
Tue, 22 Mar 2016 14:45:22 +0000 (23:45 +0900)
JavaAnalysisToolsDemo/src/demo/soba/ClassHierarchyPerformance.java
JavaAnalysisToolsDemo/src/demo/soba/ControlDependencePerformance.java [deleted file]
JavaAnalysisToolsDemo/src/demo/soba/DataDependencePerformance.java [deleted file]
JavaAnalysisToolsDemo/src/demo/soot/ControlAndDataDependencePerformance.java
JavaAnalysisToolsDemo/src/demo/soot/ControlDependencePerformance.java [deleted file]
JavaAnalysisToolsDemo/src/demo/soot/DataDependencePerformance.java [deleted file]
JavaAnalysisToolsDemo/src/demo/wala/ClassHierarchyPerformance.java
JavaAnalysisToolsDemo/src/demo/wala/ControlAndDataDependencePerformance.java
JavaAnalysisToolsDemo/src/demo/wala/ControlDependenceBasicBlockPeformance.java [deleted file]
JavaAnalysisToolsDemo/src/demo/wala/ControlDependencePerformance.java [deleted file]
JavaAnalysisToolsDemo/src/demo/wala/DataDependencePerformance.java [deleted file]

index 689de9e..fc006f6 100644 (file)
@@ -21,10 +21,10 @@ public class ClassHierarchyPerformance {
                                        MethodInfo[] callees = ch.resolveCall(cs);\r
                                        if (callees.length > 0) {\r
                                                for (MethodInfo callee: callees) {\r
-//                                                     System.out.println(m.toLongString() + " may call " + callee.toLongString());\r
+//                                                     System.out.println(" [inside] " + m.toLongString() + " may call " + callee.toLongString());\r
                                                }\r
                                        } else {\r
-//                                             System.out.println(m.toString() + " may call " + cs.toString());\r
+//                                             System.out.println(" [outside] " + m.toString() + " may call " + cs.toString());\r
                                        }\r
                                }\r
                        }\r
diff --git a/JavaAnalysisToolsDemo/src/demo/soba/ControlDependencePerformance.java b/JavaAnalysisToolsDemo/src/demo/soba/ControlDependencePerformance.java
deleted file mode 100644 (file)
index aea8b50..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-package demo.soba;\r
-\r
-import demo.util.MemoryInfo;\r
-import soba.core.ClassInfo;\r
-import soba.core.JavaProgram;\r
-import soba.core.MethodInfo;\r
-import soba.util.IntPairProc;\r
-import soba.util.files.ClasspathUtil;\r
-import soba.util.graph.DirectedGraph;\r
-\r
-public class ControlDependencePerformance {\r
-\r
-       public static void main(String[] args) {\r
-               args = new String[]{"bin/demo/testdata"};\r
-               \r
-               long start = System.currentTimeMillis();\r
-               \r
-               JavaProgram program = new JavaProgram(ClasspathUtil.getClassList(args));\r
-               for (ClassInfo c: program.getClasses()) {\r
-                       for (MethodInfo m: c.getMethods()) {\r
-                               DirectedGraph cd = m.getControlDependence();\r
-                               cd.forEachEdge(new IntPairProc() {\r
-                                       @Override\r
-                                       public boolean execute(int elem1, int elem2) {\r
-//                                             System.out.println(elem1 + " -> " + elem2);\r
-                                               return true;\r
-                                       }\r
-                               });\r
-                       }\r
-               }\r
-               \r
-               long end = System.currentTimeMillis();\r
-               \r
-               System.out.println((end - start) + " [ms]");\r
-               System.out.println(MemoryInfo.getMemoryInfo());\r
-       }\r
-\r
-}\r
diff --git a/JavaAnalysisToolsDemo/src/demo/soba/DataDependencePerformance.java b/JavaAnalysisToolsDemo/src/demo/soba/DataDependencePerformance.java
deleted file mode 100644 (file)
index 3e8ab85..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-package demo.soba;\r
-\r
-import demo.util.MemoryInfo;\r
-import soba.core.ClassInfo;\r
-import soba.core.JavaProgram;\r
-import soba.core.MethodInfo;\r
-import soba.core.method.DataDependence;\r
-import soba.core.method.DataFlowEdge;\r
-import soba.util.files.ClasspathUtil;\r
-\r
-public class DataDependencePerformance {\r
-\r
-       public static void main(String[] args) {\r
-               args = new String[]{"bin/demo/testdata"};\r
-               \r
-               long start = System.currentTimeMillis();\r
-               \r
-               JavaProgram program = new JavaProgram(ClasspathUtil.getClassList(args));\r
-               for (ClassInfo c: program.getClasses()) {\r
-                       for (MethodInfo m: c.getMethods()) {\r
-                               DataDependence dd = m.getDataDependence();\r
-                               for (DataFlowEdge e: dd.getEdges()) {\r
-//                                     System.out.println(e.toString());\r
-                               }\r
-                       }\r
-               }\r
-               \r
-               long end = System.currentTimeMillis();\r
-               \r
-               System.out.println((end - start) + " [ms]");\r
-               System.out.println(MemoryInfo.getMemoryInfo());\r
-       }\r
-\r
-}\r
index 40a6699..976a899 100644 (file)
@@ -5,7 +5,6 @@ import java.util.Map;
 import soot.Body;\r
 import soot.BodyTransformer;\r
 import soot.PackManager;\r
-import soot.PhaseOptions;\r
 import soot.Transform;\r
 import soot.toolkits.graph.ExceptionalUnitGraph;\r
 import soot.toolkits.graph.UnitGraph;\r
@@ -20,20 +19,15 @@ public class ControlAndDataDependencePerformance {
                PackManager.v().getPack("jap").add(new Transform("jap.myTransform", new BodyTransformer() {\r
                        @Override\r
                        protected void internalTransform(Body body, String phase, Map options) {\r
-                               try {\r
-                                       UnitGraph graph = new ExceptionalUnitGraph(body);\r
-                                       ProgramDependenceGraph pdg = new HashMutablePDG(graph);\r
-                                       for (PDGNode node1: pdg.getNodes()) {\r
-                                               for (PDGNode node2: pdg.getDependents(node1)) {\r
-//                                                     System.out.println(node1.toShortString() + " -> " + node2.toShortString());\r
-                                               }\r
+                               UnitGraph graph = new ExceptionalUnitGraph(body);\r
+                               ProgramDependenceGraph pdg = new HashMutablePDG(graph);\r
+                               for (PDGNode node1: pdg.getNodes()) {\r
+                                       for (PDGNode node2: pdg.getDependents(node1)) {\r
+//                                             System.out.println(node1.toShortString() + " -> " + node2.toShortString());\r
                                        }\r
-                               } catch (RuntimeException e) {\r
-                                       System.err.println(body.getMethod());\r
                                }\r
                        }\r
                }));\r
-               PhaseOptions.v().setPhaseOption("jap.npc", "on");\r
                \r
                long start = System.currentTimeMillis();\r
                soot.Main.main(args);\r
diff --git a/JavaAnalysisToolsDemo/src/demo/soot/ControlDependencePerformance.java b/JavaAnalysisToolsDemo/src/demo/soot/ControlDependencePerformance.java
deleted file mode 100644 (file)
index c18656c..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-package demo.soot;\r
-\r
-import java.io.File;\r
-import java.util.Arrays;\r
-import java.util.List;\r
-import java.util.Map;\r
-\r
-import soot.Body;\r
-import soot.BodyTransformer;\r
-import soot.PackManager;\r
-import soot.PhaseOptions;\r
-import soot.Transform;\r
-import soot.toolkits.graph.ExceptionalUnitGraph;\r
-import soot.toolkits.graph.UnitGraph;\r
-import soot.toolkits.graph.pdg.ConditionalPDGNode;\r
-import soot.toolkits.graph.pdg.HashMutablePDG;\r
-import soot.toolkits.graph.pdg.PDGNode;\r
-import soot.toolkits.graph.pdg.ProgramDependenceGraph;\r
-import demo.util.DemoUtil;\r
-import demo.util.MemoryInfo;\r
-\r
-public class ControlDependencePerformance {\r
-\r
-       public static void main(String[] args) {\r
-               List<String> argsList = Arrays.asList(new String[]{\r
-                               "-cp",\r
-                               "bin" + File.pathSeparator + \r
-                               "bin/demo/testdata" + File.pathSeparator + \r
-                               DemoUtil.RT_PATH + File.pathSeparator +\r
-                               DemoUtil.JCE_PATH,\r
-                               "-whole-program",\r
-                               "-main-class",\r
-                               "demo.testdata.TestClass",//main-class\r
-//                             "-app",\r
-//                             "demo.testdata.TestClass",\r
-//                             "demo.testdata.TestClass",//argument classes\r
-                               "-p",\r
-                               "cg.cha",\r
-                               "apponly:true,verbose:true",\r
-                               "demo.testdata.TestClass"\r
-//                             "-keep-line-number"\r
-               });\r
-               \r
-               PackManager.v().getPack("jap").add(new Transform("jap.myTransform", new BodyTransformer() {\r
-                       @Override\r
-                       protected void internalTransform(Body body, String phase, Map options) {\r
-                               try {\r
-                                       UnitGraph graph = new ExceptionalUnitGraph(body);\r
-                                       ProgramDependenceGraph pdg = new HashMutablePDG(graph);\r
-                                       for (PDGNode node1: pdg.getNodes()) {\r
-                                               // Extracts only control-dependence edges\r
-                                               if (node1 instanceof ConditionalPDGNode) {\r
-                                                       for (PDGNode node2: pdg.getDependents(node1)) {\r
-//                                                             System.out.println(node1.toShortString() + " -> " + node2.toShortString());\r
-                                                       }\r
-                                               }\r
-                                       }\r
-                               } catch (RuntimeException e) {\r
-                                       System.err.println(body.getMethod());\r
-                               }\r
-                       }\r
-               }));\r
-//             Options.v().set_verbose(true);\r
-               PhaseOptions.v().setPhaseOption("jap.npc", "on");\r
-               \r
-               args = argsList.toArray(new String[0]);\r
-\r
-               long start = System.currentTimeMillis();\r
-               soot.Main.main(args);\r
-               long end = System.currentTimeMillis();\r
-               \r
-               System.out.println((end - start) + " [ms]");\r
-               System.out.println(MemoryInfo.getMemoryInfo());\r
-       }\r
-\r
-}\r
diff --git a/JavaAnalysisToolsDemo/src/demo/soot/DataDependencePerformance.java b/JavaAnalysisToolsDemo/src/demo/soot/DataDependencePerformance.java
deleted file mode 100644 (file)
index e03c5b0..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-package demo.soot;\r
-\r
-import java.io.File;\r
-import java.util.Arrays;\r
-import java.util.List;\r
-import java.util.Map;\r
-\r
-import demo.util.DemoUtil;\r
-import demo.util.MemoryInfo;\r
-import soot.Body;\r
-import soot.BodyTransformer;\r
-import soot.Local;\r
-import soot.PackManager;\r
-import soot.PhaseOptions;\r
-import soot.Transform;\r
-import soot.Unit;\r
-import soot.Value;\r
-import soot.ValueBox;\r
-import soot.toolkits.graph.BriefUnitGraph;\r
-import soot.toolkits.graph.ExceptionalUnitGraph;\r
-import soot.toolkits.graph.UnitGraph;\r
-import soot.toolkits.scalar.LiveLocals;\r
-import soot.toolkits.scalar.LocalDefs;\r
-import soot.toolkits.scalar.SimpleLiveLocals;\r
-import soot.toolkits.scalar.SmartLocalDefs;\r
-\r
-public class DataDependencePerformance {\r
-\r
-       public static void main(String[] args) {\r
-               List<String> argsList = Arrays.asList(new String[]{\r
-                               "-cp",\r
-                               "bin" + File.pathSeparator + \r
-                               "bin/demo/testdata" + File.pathSeparator + \r
-                               DemoUtil.RT_PATH + File.pathSeparator +\r
-                               DemoUtil.JCE_PATH,\r
-                               "-whole-program",\r
-                               "-main-class",\r
-                               "demo.testdata.TestClass",//main-class\r
-//                             "-app",\r
-//                             "demo.testdata.TestClass",\r
-//                             "demo.testdata.TestClass",//argument classes\r
-                               "-p",\r
-                               "cg.cha",\r
-                               "apponly:true,verbose:true",\r
-                               "demo.testdata.TestClass"\r
-//                             "-keep-line-number"\r
-               });\r
-               \r
-               PackManager.v().getPack("jap").add(new Transform("jap.myTransform", new BodyTransformer() {\r
-                       @Override\r
-                       protected void internalTransform(Body body, String phase, Map options) {\r
-//                             UnitGraph graph = new ExceptionalUnitGraph(body);\r
-                               UnitGraph graph = new BriefUnitGraph(body);\r
-                               LiveLocals live = new SimpleLiveLocals(graph);\r
-                               LocalDefs defs = new SmartLocalDefs(graph, live);\r
-\r
-                               for (Unit u: body.getUnits()) {\r
-                                       for (ValueBox vb: u.getUseBoxes()) {\r
-                                               Value v = vb.getValue();\r
-                                               if (v instanceof Local) {\r
-                                                       List<Unit> defUnits = defs.getDefsOfAt((Local) v, u);\r
-                                                       for (Unit def: defUnits) {\r
-//                                                             System.out.println(def.toString() + " -> " + u.toString());\r
-                                                       }\r
-                                               }\r
-                                       }\r
-                               }\r
-                       }\r
-               }));\r
-//             Options.v().set_verbose(true);\r
-               PhaseOptions.v().setPhaseOption("jap.npc", "on");\r
-               \r
-               args = argsList.toArray(new String[0]);\r
-               \r
-               long start = System.currentTimeMillis();\r
-               soot.Main.main(args);\r
-               long end = System.currentTimeMillis();\r
-               \r
-               System.out.println((end - start) + " [ms]");\r
-               System.out.println(MemoryInfo.getMemoryInfo());\r
-       }\r
-\r
-}\r
index 4eb9132..0390cfb 100644 (file)
@@ -20,32 +20,28 @@ import demo.util.MemoryInfo;
 \r
 public class ClassHierarchyPerformance {\r
 \r
-       public static void main(String[] args) {\r
-               try {\r
-                       long start = System.currentTimeMillis();\r
-                       \r
-                       AnalysisScope scope = AnalysisScopeReader.makeJavaBinaryAnalysisScope(args[0], (new FileProvider()).getFile(DemoUtil.REGRESSION_EXCLUSIONS));\r
-                       ClassHierarchy cha = ClassHierarchy.make(scope);\r
-                       Iterable<Entrypoint> entrypoints = Util.makeMainEntrypoints(scope, cha);\r
-                       AnalysisOptions options = new AnalysisOptions(scope, entrypoints);\r
-                       CallGraphBuilder builder = Util.makeZeroCFABuilder(options, new AnalysisCache(), cha, scope);\r
-                       CallGraph cg = builder.makeCallGraph(options, null);\r
-                       for (Iterator<CGNode> itr = cg.iterator(); itr.hasNext();) {\r
-                               CGNode caller = itr.next();\r
-                               for (Iterator<CGNode> callees = cg.getSuccNodes(caller); callees.hasNext();) {\r
-                                       CGNode callee = callees.next();\r
-                                       IMethod callerMethod = caller.getMethod();\r
-                                       IMethod calleeMethod = callee.getMethod();\r
-//                                     System.out.println(callerMethod.toString() + " -> " + calleeMethod.toString());\r
-                               }\r
+       public static void main(String[] args) throws Exception {\r
+               long start = System.currentTimeMillis();\r
+\r
+               AnalysisScope scope = AnalysisScopeReader.makeJavaBinaryAnalysisScope(args[0], (new FileProvider()).getFile(DemoUtil.REGRESSION_EXCLUSIONS));\r
+               ClassHierarchy cha = ClassHierarchy.make(scope);\r
+               Iterable<Entrypoint> entrypoints = Util.makeMainEntrypoints(scope, cha);\r
+               AnalysisOptions options = new AnalysisOptions(scope, entrypoints);\r
+               CallGraphBuilder builder = Util.makeZeroCFABuilder(options, new AnalysisCache(), cha, scope);\r
+               CallGraph cg = builder.makeCallGraph(options, null);\r
+               for (Iterator<CGNode> itr = cg.iterator(); itr.hasNext();) {\r
+                       CGNode caller = itr.next();\r
+                       for (Iterator<CGNode> callees = cg.getSuccNodes(caller); callees.hasNext();) {\r
+                               CGNode callee = callees.next();\r
+                               IMethod callerMethod = caller.getMethod();\r
+                               IMethod calleeMethod = callee.getMethod();\r
+//                             System.out.println(callerMethod.toString() + " -> " + calleeMethod.toString());\r
                        }\r
-                       long end = System.currentTimeMillis();\r
-                       \r
-                       System.err.println((end - start) + " [ms]");\r
-                       System.err.println(MemoryInfo.getMemoryInfo());\r
-               } catch (Exception e) {\r
-                       e.printStackTrace();\r
                }\r
+               long end = System.currentTimeMillis();\r
+\r
+               System.err.println((end - start) + " [ms]");\r
+               System.err.println(MemoryInfo.getMemoryInfo());\r
        }\r
 \r
 }\r
index 1cbe9d1..8f25c37 100644 (file)
@@ -30,44 +30,40 @@ import demo.util.MemoryInfo;
 \r
 public class ControlAndDataDependencePerformance {\r
 \r
-       public static void main(String[] args) {\r
-               try {\r
-                       long start = System.currentTimeMillis();\r
-                       \r
-                       AnalysisScope scope = AnalysisScopeReader.makeJavaBinaryAnalysisScope(args[0], (new FileProvider()).getFile(DemoUtil.REGRESSION_EXCLUSIONS));\r
-                       ClassHierarchy cha = ClassHierarchy.make(scope);\r
-                       Iterable<Entrypoint> entrypoints = Util.makeMainEntrypoints(scope, cha);\r
-                       AnalysisCache cache = new AnalysisCache();\r
-                       AnalysisOptions options = new AnalysisOptions(scope, entrypoints);\r
-                       CallGraphBuilder builder = Util.makeZeroCFABuilder(options, cache, cha, scope);\r
-                       CallGraph cg = builder.makeCallGraph(options, null);\r
-                       PointerAnalysis<InstanceKey> pa = null;\r
+       public static void main(String[] args) throws Exception {\r
+               long start = System.currentTimeMillis();\r
 \r
-                       for (int i = 0; i < cg.getMaxNumber(); i++) {\r
-                               CGNode node = cg.getNode(i);\r
-                               DataDependenceOptions dOptions = DataDependenceOptions.NO_HEAP_NO_EXCEPTIONS;\r
-                               ControlDependenceOptions cOptions = ControlDependenceOptions.NO_EXCEPTIONAL_EDGES;\r
-                               ModRef modRef = ModRef.make();\r
-                               HeapExclusions exclusions = null;\r
-                               Map<CGNode, OrdinalSet<PointerKey>> mod = null;\r
-                               Map<CGNode, OrdinalSet<PointerKey>> ref = null;\r
-                               PDG pdg = new PDG(node, pa, mod, ref, dOptions, cOptions, exclusions, cg, modRef);\r
-                               for (Iterator<Statement> statements = pdg.iterator(); statements.hasNext();) {\r
-                                       Statement s1 = statements.next();\r
-                                       for (Iterator<Statement> succs = pdg.getSuccNodes(s1); succs.hasNext();) {\r
-                                               Statement s2 = succs.next();\r
-//                                             System.out.println(s1.toString() + " -> " + s2.toString());\r
-                                       }\r
+               AnalysisScope scope = AnalysisScopeReader.makeJavaBinaryAnalysisScope(args[0], (new FileProvider()).getFile(DemoUtil.REGRESSION_EXCLUSIONS));\r
+               ClassHierarchy cha = ClassHierarchy.make(scope);\r
+               Iterable<Entrypoint> entrypoints = Util.makeMainEntrypoints(scope, cha);\r
+               AnalysisCache cache = new AnalysisCache();\r
+               AnalysisOptions options = new AnalysisOptions(scope, entrypoints);\r
+               CallGraphBuilder builder = Util.makeZeroCFABuilder(options, cache, cha, scope);\r
+               CallGraph cg = builder.makeCallGraph(options, null);\r
+               PointerAnalysis<InstanceKey> pa = null;\r
+\r
+               for (int i = 0; i < cg.getMaxNumber(); i++) {\r
+                       CGNode node = cg.getNode(i);\r
+                       DataDependenceOptions dOptions = DataDependenceOptions.NO_HEAP_NO_EXCEPTIONS;\r
+                       ControlDependenceOptions cOptions = ControlDependenceOptions.NO_EXCEPTIONAL_EDGES;\r
+                       ModRef modRef = ModRef.make();\r
+                       HeapExclusions exclusions = null;\r
+                       Map<CGNode, OrdinalSet<PointerKey>> mod = null;\r
+                       Map<CGNode, OrdinalSet<PointerKey>> ref = null;\r
+                       PDG pdg = new PDG(node, pa, mod, ref, dOptions, cOptions, exclusions, cg, modRef);\r
+                       for (Iterator<Statement> statements = pdg.iterator(); statements.hasNext();) {\r
+                               Statement s1 = statements.next();\r
+                               for (Iterator<Statement> succs = pdg.getSuccNodes(s1); succs.hasNext();) {\r
+                                       Statement s2 = succs.next();\r
+//                                     System.out.println(s1.toString() + " -> " + s2.toString());\r
                                }\r
                        }\r
-                       \r
-                       long end = System.currentTimeMillis();\r
-                       \r
-                       System.err.println((end - start) + " [ms]");\r
-                       System.err.println(MemoryInfo.getMemoryInfo());\r
-               } catch (Exception e) {\r
-                       e.printStackTrace();\r
                }\r
+\r
+               long end = System.currentTimeMillis();\r
+\r
+               System.err.println((end - start) + " [ms]");\r
+               System.err.println(MemoryInfo.getMemoryInfo());\r
        }\r
 \r
 }\r
diff --git a/JavaAnalysisToolsDemo/src/demo/wala/ControlDependenceBasicBlockPeformance.java b/JavaAnalysisToolsDemo/src/demo/wala/ControlDependenceBasicBlockPeformance.java
deleted file mode 100644 (file)
index 0212c63..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-package demo.wala;\r
-\r
-import java.util.Iterator;\r
-\r
-import com.ibm.wala.cfg.cdg.ControlDependenceGraph;\r
-import com.ibm.wala.classLoader.IClass;\r
-import com.ibm.wala.classLoader.IMethod;\r
-import com.ibm.wala.ipa.callgraph.AnalysisCache;\r
-import com.ibm.wala.ipa.callgraph.AnalysisOptions;\r
-import com.ibm.wala.ipa.callgraph.AnalysisScope;\r
-import com.ibm.wala.ipa.callgraph.impl.Everywhere;\r
-import com.ibm.wala.ipa.cha.ClassHierarchy;\r
-import com.ibm.wala.ssa.IR;\r
-import com.ibm.wala.ssa.ISSABasicBlock;\r
-import com.ibm.wala.ssa.SSAInstruction;\r
-import com.ibm.wala.ssa.SSAOptions;\r
-import com.ibm.wala.util.config.AnalysisScopeReader;\r
-import com.ibm.wala.util.debug.Assertions;\r
-import com.ibm.wala.util.io.FileProvider;\r
-\r
-import demo.util.DemoUtil;\r
-\r
-public class ControlDependenceBasicBlockPeformance {\r
-\r
-       public static void main(String[] args) {\r
-               try {\r
-                       String appJar = "bin/demo/testdata";\r
-                       \r
-                       AnalysisScope scope = AnalysisScopeReader.makeJavaBinaryAnalysisScope(appJar, (new FileProvider()).getFile(DemoUtil.REGRESSION_EXCLUSIONS));\r
-\r
-                       ClassHierarchy cha = ClassHierarchy.make(scope);\r
-\r
-                       for (Iterator<IClass> itr = cha.iterator(); itr.hasNext();) {\r
-                               IClass c = itr.next();\r
-                               for (IMethod m: c.getAllMethods()) {\r
-                                       AnalysisOptions options = new AnalysisOptions();\r
-                                       options.getSSAOptions().setPiNodePolicy(SSAOptions.getAllBuiltInPiNodes());\r
-                                       AnalysisCache cache = new AnalysisCache();\r
-                                       IR ir = cache.getSSACache().findOrCreateIR(m, Everywhere.EVERYWHERE, options.getSSAOptions() );\r
-                                       if (ir == null) {\r
-                                               Assertions.UNREACHABLE("Null IR for " + m);\r
-                                       }\r
-                                       ControlDependenceGraph<SSAInstruction, ISSABasicBlock> cdg = new ControlDependenceGraph<>(ir.getControlFlowGraph());\r
-                                       for (int i = 0; i < cdg.getMaxNumber(); i++) {\r
-                                               ISSABasicBlock b1 = cdg.getNode(i);\r
-                                               for (Iterator<ISSABasicBlock> succs = cdg.getSuccNodes(b1); succs.hasNext();) {\r
-                                                       ISSABasicBlock b2 = succs.next();\r
-//                                                     System.out.println(b1.toString() + " -> " + b2.toString());\r
-                                               }\r
-                                       }\r
-                               }\r
-                       }\r
-               } catch (Exception e) {\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-\r
-}\r
diff --git a/JavaAnalysisToolsDemo/src/demo/wala/ControlDependencePerformance.java b/JavaAnalysisToolsDemo/src/demo/wala/ControlDependencePerformance.java
deleted file mode 100644 (file)
index bbf28bd..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-package demo.wala;\r
-\r
-import java.util.Iterator;\r
-import java.util.Map;\r
-\r
-import com.ibm.wala.ipa.callgraph.AnalysisCache;\r
-import com.ibm.wala.ipa.callgraph.AnalysisOptions;\r
-import com.ibm.wala.ipa.callgraph.AnalysisScope;\r
-import com.ibm.wala.ipa.callgraph.CGNode;\r
-import com.ibm.wala.ipa.callgraph.CallGraph;\r
-import com.ibm.wala.ipa.callgraph.CallGraphBuilder;\r
-import com.ibm.wala.ipa.callgraph.Entrypoint;\r
-import com.ibm.wala.ipa.callgraph.impl.Util;\r
-import com.ibm.wala.ipa.callgraph.propagation.InstanceKey;\r
-import com.ibm.wala.ipa.callgraph.propagation.PointerAnalysis;\r
-import com.ibm.wala.ipa.callgraph.propagation.PointerKey;\r
-import com.ibm.wala.ipa.cha.ClassHierarchy;\r
-import com.ibm.wala.ipa.modref.ModRef;\r
-import com.ibm.wala.ipa.slicer.HeapExclusions;\r
-import com.ibm.wala.ipa.slicer.PDG;\r
-import com.ibm.wala.ipa.slicer.Statement;\r
-import com.ibm.wala.ipa.slicer.Slicer.ControlDependenceOptions;\r
-import com.ibm.wala.ipa.slicer.Slicer.DataDependenceOptions;\r
-import com.ibm.wala.util.config.AnalysisScopeReader;\r
-import com.ibm.wala.util.intset.OrdinalSet;\r
-import com.ibm.wala.util.io.FileProvider;\r
-\r
-import demo.util.DemoUtil;\r
-import demo.util.MemoryInfo;\r
-\r
-public class ControlDependencePerformance {\r
-\r
-       public static void main(String[] args) {\r
-               try {\r
-                       long start = System.currentTimeMillis();\r
-                       \r
-                       String appJar = "bin/demo/testdata";\r
-                       AnalysisScope scope = AnalysisScopeReader.makeJavaBinaryAnalysisScope(appJar, (new FileProvider()).getFile(DemoUtil.REGRESSION_EXCLUSIONS));\r
-\r
-                       ClassHierarchy cha = ClassHierarchy.make(scope);\r
-                       \r
-                       Iterable<Entrypoint> entrypoints = Util.makeMainEntrypoints(scope, cha);\r
-                       AnalysisOptions options = new AnalysisOptions(scope, entrypoints);\r
-\r
-                       // build the call graph\r
-                       CallGraphBuilder cgb = Util.makeZeroCFABuilder(options, new AnalysisCache(),cha, scope, null, null);\r
-                       CallGraph cg = cgb.makeCallGraph(options, null);\r
-                       PointerAnalysis<InstanceKey> pa = null;\r
-\r
-                       for (int i = 0; i < cg.getMaxNumber(); i++) {\r
-                               CGNode node = cg.getNode(i);\r
-                               DataDependenceOptions dOptions = DataDependenceOptions.NONE;\r
-                               ControlDependenceOptions cOptions = ControlDependenceOptions.NO_EXCEPTIONAL_EDGES;\r
-                               ModRef modRef = ModRef.make();\r
-                               HeapExclusions exclusions = null;\r
-                               Map<CGNode, OrdinalSet<PointerKey>> mod = null;\r
-                               Map<CGNode, OrdinalSet<PointerKey>> ref = null;\r
-                               PDG pdg = new PDG(node, pa, mod, ref, dOptions, cOptions, exclusions, cg, modRef);\r
-                               \r
-                               for (Iterator<Statement> itr = pdg.iterator(); itr.hasNext();) {\r
-                                       Statement s1 = itr.next();\r
-                                       for (Iterator<Statement> succs = pdg.getSuccNodes(s1); succs.hasNext();) {\r
-                                               Statement s2 = succs.next();\r
-//                                             System.out.println(s1.toString() + " -> " + s2.toString());\r
-                                       }\r
-                               }\r
-                       }\r
-                       \r
-                       long end = System.currentTimeMillis();\r
-                       \r
-                       System.out.println((end - start) + " [ms]");\r
-                       System.out.println(MemoryInfo.getMemoryInfo());\r
-               } catch (Exception e) {\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-\r
-}\r
diff --git a/JavaAnalysisToolsDemo/src/demo/wala/DataDependencePerformance.java b/JavaAnalysisToolsDemo/src/demo/wala/DataDependencePerformance.java
deleted file mode 100644 (file)
index 190c0a8..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-package demo.wala;\r
-\r
-import java.util.Iterator;\r
-import java.util.Map;\r
-\r
-import com.ibm.wala.ipa.callgraph.AnalysisCache;\r
-import com.ibm.wala.ipa.callgraph.AnalysisOptions;\r
-import com.ibm.wala.ipa.callgraph.AnalysisScope;\r
-import com.ibm.wala.ipa.callgraph.CGNode;\r
-import com.ibm.wala.ipa.callgraph.CallGraph;\r
-import com.ibm.wala.ipa.callgraph.CallGraphBuilder;\r
-import com.ibm.wala.ipa.callgraph.Entrypoint;\r
-import com.ibm.wala.ipa.callgraph.impl.Util;\r
-import com.ibm.wala.ipa.callgraph.propagation.InstanceKey;\r
-import com.ibm.wala.ipa.callgraph.propagation.PointerAnalysis;\r
-import com.ibm.wala.ipa.callgraph.propagation.PointerKey;\r
-import com.ibm.wala.ipa.cha.ClassHierarchy;\r
-import com.ibm.wala.ipa.modref.ModRef;\r
-import com.ibm.wala.ipa.slicer.HeapExclusions;\r
-import com.ibm.wala.ipa.slicer.PDG;\r
-import com.ibm.wala.ipa.slicer.Slicer.ControlDependenceOptions;\r
-import com.ibm.wala.ipa.slicer.Slicer.DataDependenceOptions;\r
-import com.ibm.wala.ipa.slicer.Statement;\r
-import com.ibm.wala.util.config.AnalysisScopeReader;\r
-import com.ibm.wala.util.intset.OrdinalSet;\r
-import com.ibm.wala.util.io.FileProvider;\r
-\r
-import demo.util.DemoUtil;\r
-import demo.util.MemoryInfo;\r
-\r
-public class DataDependencePerformance {\r
-\r
-       public static void main(String[] args) {\r
-               try {\r
-                       long start = System.currentTimeMillis();\r
-                       \r
-                       String appJar = "bin/demo/testdata";\r
-                       AnalysisScope scope = AnalysisScopeReader.makeJavaBinaryAnalysisScope(appJar, (new FileProvider()).getFile(DemoUtil.REGRESSION_EXCLUSIONS));\r
-\r
-                       ClassHierarchy cha = ClassHierarchy.make(scope);\r
-                       \r
-                       Iterable<Entrypoint> entrypoints = Util.makeMainEntrypoints(scope, cha);\r
-                       AnalysisOptions options = new AnalysisOptions(scope, entrypoints);\r
-\r
-                       // build the call graph\r
-                       CallGraphBuilder cgb = Util.makeZeroCFABuilder(options, new AnalysisCache(),cha, scope, null, null);\r
-                       CallGraph cg = cgb.makeCallGraph(options, null);\r
-                       PointerAnalysis<InstanceKey> pa = cgb.getPointerAnalysis();\r
-\r
-                       for (int i = 0; i < cg.getMaxNumber(); i++) {\r
-                               CGNode node = cg.getNode(i);\r
-                               DataDependenceOptions dOptions = DataDependenceOptions.NO_HEAP_NO_EXCEPTIONS;\r
-                               ControlDependenceOptions cOptions = ControlDependenceOptions.NONE;\r
-                               ModRef modRef = ModRef.make();\r
-                               HeapExclusions exclusions = null;\r
-                               Map<CGNode, OrdinalSet<PointerKey>> mod = null;\r
-                               Map<CGNode, OrdinalSet<PointerKey>> ref = null;\r
-                               PDG pdg = new PDG(node, pa, mod, ref, dOptions, cOptions, exclusions, cg, modRef);\r
-                               \r
-                               for (Iterator<Statement> itr = pdg.iterator(); itr.hasNext();) {\r
-                                       Statement s1 = itr.next();\r
-                                       for (Iterator<Statement> succs = pdg.getSuccNodes(s1); succs.hasNext();) {\r
-                                               Statement s2 = succs.next();\r
-//                                             System.out.println(s1.toString() + " -> " + s2.toString());\r
-                                       }\r
-                               }\r
-                       }\r
-                       \r
-                       long end = System.currentTimeMillis();\r
-                       \r
-                       System.out.println((end - start) + " [ms]");\r
-                       System.out.println(MemoryInfo.getMemoryInfo());\r
-               } catch (Exception e) {\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-\r
-}\r