diff options
Diffstat (limited to 'chapter05/src/main/java')
| -rw-r--r-- | chapter05/src/main/java/com/seaofnodes/simple/Parser.java | 2 | ||||
| -rw-r--r-- | chapter05/src/main/java/com/seaofnodes/simple/node/ScopeNode.java | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/chapter05/src/main/java/com/seaofnodes/simple/Parser.java b/chapter05/src/main/java/com/seaofnodes/simple/Parser.java index ca040fd0..79b50672 100644 --- a/chapter05/src/main/java/com/seaofnodes/simple/Parser.java +++ b/chapter05/src/main/java/com/seaofnodes/simple/Parser.java @@ -55,8 +55,8 @@ public class Parser { add("else"); add("false"); add("if"); + add("int"); add("return"); - add("then"); add("true"); }}; diff --git a/chapter05/src/main/java/com/seaofnodes/simple/node/ScopeNode.java b/chapter05/src/main/java/com/seaofnodes/simple/node/ScopeNode.java index 505ffcae..64061030 100644 --- a/chapter05/src/main/java/com/seaofnodes/simple/node/ScopeNode.java +++ b/chapter05/src/main/java/com/seaofnodes/simple/node/ScopeNode.java @@ -117,7 +117,7 @@ public class ScopeNode extends Node { public RegionNode mergeScopes(ScopeNode that) { RegionNode r = (RegionNode)ctrl(new RegionNode(null,ctrl(), that.ctrl()).peephole()); for( int i=1; i<nIns(); i++ ) - if( in(1) != that.in(i) ) // No need for redundant Phis + if( in(i) != that.in(i) ) // No need for redundant Phis set_def(i,new PhiNode(_rlabels.get(i), r, in(i), that.in(i)).peephole()); that.kill(); // Kill merged scope return r; |
