summaryrefslogtreecommitdiff
path: root/V2VM.java
diff options
context:
space:
mode:
Diffstat (limited to 'V2VM.java')
-rw-r--r--V2VM.java21
1 files changed, 14 insertions, 7 deletions
diff --git a/V2VM.java b/V2VM.java
index 3b17c3a..9fdfc73 100644
--- a/V2VM.java
+++ b/V2VM.java
@@ -1,3 +1,6 @@
+import java.util.logging.Logger;
+import java.util.logging.ConsoleHandler;
+
import java.io.*;
import java.util.ArrayList;
import cs132.util.ProblemException;
@@ -18,7 +21,13 @@ import vaporize.library.*;
public class V2VM {
+
public static void main(String[] args) {
+ Logger log = Logger.getLogger(V2VM.class.getName());
+ ConsoleHandler consoleHandler = new ConsoleHandler();
+ consoleHandler.setFormatter(new MinimalSimpleFormatter());
+ log.addHandler(consoleHandler);
+
try {
System.in.mark(-1);
InputStream systemInCopy = createCopyOfSystemIn();
@@ -27,13 +36,11 @@ public class V2VM {
VaporProgram prog = parseVapor(System.in, System.out);
- SpillEverywhere spill = new SpillEverywhere(prog, strProg);
-
- ArrayList<ControlFlowGraph> cfgs = new ArrayList<ControlFlowGraph>();
- for (VFunction f : prog.functions) {
- CFGSimp cfg = new CFGSimp(f);
- cfgs.add(cfg.getCFG());
- }
+ log.info(String.format("Generating CFGs..."));
+ CFGSimp cfv = new CFGSimp(prog, strProg);
+ ArrayList<ControlFlowGraph> cfgs = cfv.getCFGs();
+ log.info(String.format("Spilling Everywhere..."));
+ SpillEverywhere spill = new SpillEverywhere(prog, strProg);
} catch (IOException e) {
System.out.println(e.toString());