summaryrefslogtreecommitdiff
path: root/vaporize/library/LIRVisitor.java
diff options
context:
space:
mode:
authorbd-912 <bdunahu@colostate.edu>2024-04-21 01:17:31 -0600
committerbd-912 <bdunahu@colostate.edu>2024-04-21 01:17:31 -0600
commit110b4f031aea36445250d79c7257a57f15fb7b82 (patch)
treeb4c03e84b05a009e1c9b978f13c5887de2b59764 /vaporize/library/LIRVisitor.java
parent04fd097fb51346f655c7bdc0c88b85e29359ef1c (diff)
Fix bugs in LiveInterval, successfully calculate (gapless) LIR
Diffstat (limited to 'vaporize/library/LIRVisitor.java')
-rw-r--r--vaporize/library/LIRVisitor.java8
1 files changed, 4 insertions, 4 deletions
diff --git a/vaporize/library/LIRVisitor.java b/vaporize/library/LIRVisitor.java
index 6d5c79f..a962775 100644
--- a/vaporize/library/LIRVisitor.java
+++ b/vaporize/library/LIRVisitor.java
@@ -27,7 +27,7 @@ public class LIRVisitor extends VInstr.VisitorPR<ControlFlowGraph, String, Runti
ControlFlowGraph cfg = new ControlFlowGraph(f);
this.dot_format = "";
- MinimalLogger.info(String.format("CFGSimp is collecting nodes for %s",
+ MinimalLogger.info(String.format("LIRVisitor is collecting nodes for %s",
this.kettle.parseFuncName(f)));
for (VCodeLabel s : f.labels) {
cfg.addNode(new CFGNode(s));
@@ -37,12 +37,12 @@ public class LIRVisitor extends VInstr.VisitorPR<ControlFlowGraph, String, Runti
}
- MinimalLogger.info(String.format("CFGSimp is collecting edges for %s",
+ MinimalLogger.info(String.format("LIRVisitor is collecting edges for %s",
this.kettle.parseFuncName(f)));
// inital setup
// first visit may not find edges; cfg.addEdges will handle
- this.curr = new CFGNode(f.body[0]);
+ this.curr = cfg.getNode(f.body[0]);
// cascades downwards --- cfg.addEdges
for (VVarRef.Local l : f.params)
cfg.addReaching(this.curr, l.ident.toString());
@@ -61,7 +61,7 @@ public class LIRVisitor extends VInstr.VisitorPR<ControlFlowGraph, String, Runti
MinimalLogger.info(String.format("Gathering intervals for %s",
this.kettle.parseFuncName(f)));
- LIRDict lir = new LIRDict(cfg);
+ LIRDict lir = new LIRDict(f, cfg);
this.lirs.add(lir);
MinimalLogger.info(String.format("Found intervals: %s",
lir.getIntervals().toString()));