OSDN Git Service

Fixed
[soba/JavaAnalysisToolsDemo.git] / JavaAnalysisToolsDemo / src / demo / soot / DataDependencePerformance.java
index 4ae8197..e03c5b0 100644 (file)
@@ -5,6 +5,8 @@ import java.util.Arrays;
 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
@@ -14,6 +16,7 @@ import soot.Transform;
 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
@@ -28,24 +31,26 @@ public class DataDependencePerformance {
                                "-cp",\r
                                "bin" + File.pathSeparator + \r
                                "bin/demo/testdata" + File.pathSeparator + \r
-                               "C:\\Program Files\\Java\\jre1.8.0_71\\lib\\rt.jar" + File.pathSeparator +\r
-                               "C:\\Program Files\\Java\\jre1.8.0_71\\lib\\jce.jar",\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
+//                             "-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
+               \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 ExceptionalUnitGraph(body);\r
+                               UnitGraph graph = new BriefUnitGraph(body);\r
                                LiveLocals live = new SimpleLiveLocals(graph);\r
                                LocalDefs defs = new SmartLocalDefs(graph, live);\r
 \r
@@ -66,7 +71,13 @@ public class DataDependencePerformance {
                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