Loading EDG/src/main/java/edg/EDGFactory.java +12 −10 Original line number Diff line number Diff line Loading @@ -82,7 +82,7 @@ public class EDGFactory { edg.getGenerationTime().setControlTime((finalControl-initialControl) / 1000000.0); // WE ARE NOT GENERATING INTERPROCEDURAL EDGES if (interproceduralGraph) { if (isOOLanguage) new InterproceduralEdgeGenerator(edg).generate(); // Specially Generated for OOPrograms else { Loading @@ -92,7 +92,7 @@ public class EDGFactory { edg.getGenerationTime().setInterproceduralTime((finalInputOutput-initialInputOutput) / 1000000.0); } } long initialFlow = System.nanoTime(); new FlowEdgeGenerator(edg).generate(); long finalFlow = System.nanoTime(); Loading @@ -102,7 +102,9 @@ public class EDGFactory { if (interproceduralGraph) new SummaryEdgeGenerator(edg).generate(); else new SummaryEdgeGenerator(edg).generateAsExternal(); //new SummaryEdgeGenerator(edg).generateAsExternal(); new SummaryEdgeGenerator(edg).generateeOnlyExternal(); // new ExceptionEdgeGenerator(edg).generate(); } Loading EDG/src/main/java/edg/graph/EDG.java +1 −0 Original line number Diff line number Diff line Loading @@ -135,6 +135,7 @@ public class EDG extends LAST { public double getCompositeTime() { return this.compositeTime; } public double getControlTime() { return this.controlTime; } public double getFlowTime() { return this.flowTime; } public double getInterproceduralTime() { return this.interproceduralTime; } public double getGenerationEDGTime() { Loading e-Knife/src/main/java/eknife/BencherTest.java +27 −3 Original line number Diff line number Diff line package eknife; import eknife.EKnife; import java.io.File; import java.io.FileNotFoundException; import java.io.PrintWriter; Loading Loading @@ -52,6 +50,9 @@ public class BencherTest { } public static void main(String[] args) { new File(EKnife.sliceGenerationCsv).delete(); new File(EKnife.graphGenerationCsv).delete(); EKnife.printHeadings(EKnife.graphGenerationCsv, EKnife.sliceGenerationCsv); Scanner in = new Scanner(System.in); File testFolder = new File("./e-knife-v1.1.0-src/e-Knife/src/test/resources/regression/", TEST_PKG); findFiles(testFolder, DOT_ERLANG, file -> { Loading Loading @@ -90,7 +91,7 @@ public class BencherTest { arguments[5] = lineNumber+""; arguments[7] = var.trim(); System.out.println("Slicing program "+ file.getName() + " " + BencherTest.cont + "/23"); System.out.print("Slicing program "+ file.getName() + " " + BencherTest.cont + "/23: "); BencherTest.cont++; EKnife.main(arguments); Loading @@ -106,4 +107,27 @@ public class BencherTest { } }); } public static void main2(String[] args) { TEST_PKG = "bencher_intraprocedural"; EKnife.printHeadings(EKnife.graphGenerationCsv, EKnife.sliceGenerationCsv); File testFolder = new File("./e-knife-v1.1.0-src/e-Knife/src/test/resources/regression/", TEST_PKG); findFiles(testFolder, DOT_ERLANG, file -> { String[] arguments = {"-i", "", "-o" ,"", "-l", "", "-v", ""}; File outputDir = testFolder.getAbsoluteFile(); String inputFileName = testFolder.getAbsolutePath() + File.separator + file.getName(); String outputFileName = outputDir + File.separator + file.getName() + EDG_OUTPUT_SLICE; arguments[1] = inputFileName; arguments[3] = outputFileName; arguments[5] = "1"; arguments[7] = "X"; System.out.println("Slicing program "+ file.getName() + " " + BencherTest.cont + "/13"); BencherTest.cont++; EKnife.main(arguments); }); } } e-Knife/src/main/java/eknife/EKnife.java +162 −138 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
EDG/src/main/java/edg/EDGFactory.java +12 −10 Original line number Diff line number Diff line Loading @@ -82,7 +82,7 @@ public class EDGFactory { edg.getGenerationTime().setControlTime((finalControl-initialControl) / 1000000.0); // WE ARE NOT GENERATING INTERPROCEDURAL EDGES if (interproceduralGraph) { if (isOOLanguage) new InterproceduralEdgeGenerator(edg).generate(); // Specially Generated for OOPrograms else { Loading @@ -92,7 +92,7 @@ public class EDGFactory { edg.getGenerationTime().setInterproceduralTime((finalInputOutput-initialInputOutput) / 1000000.0); } } long initialFlow = System.nanoTime(); new FlowEdgeGenerator(edg).generate(); long finalFlow = System.nanoTime(); Loading @@ -102,7 +102,9 @@ public class EDGFactory { if (interproceduralGraph) new SummaryEdgeGenerator(edg).generate(); else new SummaryEdgeGenerator(edg).generateAsExternal(); //new SummaryEdgeGenerator(edg).generateAsExternal(); new SummaryEdgeGenerator(edg).generateeOnlyExternal(); // new ExceptionEdgeGenerator(edg).generate(); } Loading
EDG/src/main/java/edg/graph/EDG.java +1 −0 Original line number Diff line number Diff line Loading @@ -135,6 +135,7 @@ public class EDG extends LAST { public double getCompositeTime() { return this.compositeTime; } public double getControlTime() { return this.controlTime; } public double getFlowTime() { return this.flowTime; } public double getInterproceduralTime() { return this.interproceduralTime; } public double getGenerationEDGTime() { Loading
e-Knife/src/main/java/eknife/BencherTest.java +27 −3 Original line number Diff line number Diff line package eknife; import eknife.EKnife; import java.io.File; import java.io.FileNotFoundException; import java.io.PrintWriter; Loading Loading @@ -52,6 +50,9 @@ public class BencherTest { } public static void main(String[] args) { new File(EKnife.sliceGenerationCsv).delete(); new File(EKnife.graphGenerationCsv).delete(); EKnife.printHeadings(EKnife.graphGenerationCsv, EKnife.sliceGenerationCsv); Scanner in = new Scanner(System.in); File testFolder = new File("./e-knife-v1.1.0-src/e-Knife/src/test/resources/regression/", TEST_PKG); findFiles(testFolder, DOT_ERLANG, file -> { Loading Loading @@ -90,7 +91,7 @@ public class BencherTest { arguments[5] = lineNumber+""; arguments[7] = var.trim(); System.out.println("Slicing program "+ file.getName() + " " + BencherTest.cont + "/23"); System.out.print("Slicing program "+ file.getName() + " " + BencherTest.cont + "/23: "); BencherTest.cont++; EKnife.main(arguments); Loading @@ -106,4 +107,27 @@ public class BencherTest { } }); } public static void main2(String[] args) { TEST_PKG = "bencher_intraprocedural"; EKnife.printHeadings(EKnife.graphGenerationCsv, EKnife.sliceGenerationCsv); File testFolder = new File("./e-knife-v1.1.0-src/e-Knife/src/test/resources/regression/", TEST_PKG); findFiles(testFolder, DOT_ERLANG, file -> { String[] arguments = {"-i", "", "-o" ,"", "-l", "", "-v", ""}; File outputDir = testFolder.getAbsoluteFile(); String inputFileName = testFolder.getAbsolutePath() + File.separator + file.getName(); String outputFileName = outputDir + File.separator + file.getName() + EDG_OUTPUT_SLICE; arguments[1] = inputFileName; arguments[3] = outputFileName; arguments[5] = "1"; arguments[7] = "X"; System.out.println("Slicing program "+ file.getName() + " " + BencherTest.cont + "/13"); BencherTest.cont++; EKnife.main(arguments); }); } }
e-Knife/src/main/java/eknife/EKnife.java +162 −138 File changed.Preview size limit exceeded, changes collapsed. Show changes