summaryrefslogtreecommitdiff
path: root/chapter18/src/main/java
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2025-01-07 15:41:39 -0800
committerCliff Click <cliffc@acm.org>2025-01-15 15:07:30 -0800
commite493d4b83d638db6a9305525925a4052739b6572 (patch)
tree1738e41a07d8080cdd39793fde7b2dfac716ab8e /chapter18/src/main/java
parente0d7b4f8ef0e886f8efae62b77402007e6b2476c (diff)
downloadSimple-e493d4b83d638db6a9305525925a4052739b6572.tar.gz
Simple-e493d4b83d638db6a9305525925a4052739b6572.zip
Update FunNode.java
Diffstat (limited to 'chapter18/src/main/java')
-rw-r--r--chapter18/src/main/java/com/seaofnodes/simple/node/FunNode.java9
1 files changed, 4 insertions, 5 deletions
diff --git a/chapter18/src/main/java/com/seaofnodes/simple/node/FunNode.java b/chapter18/src/main/java/com/seaofnodes/simple/node/FunNode.java
index 3e426ebe..8300d80f 100644
--- a/chapter18/src/main/java/com/seaofnodes/simple/node/FunNode.java
+++ b/chapter18/src/main/java/com/seaofnodes/simple/node/FunNode.java
@@ -1,9 +1,6 @@
package com.seaofnodes.simple.node;
-import com.seaofnodes.simple.Ary;
-import com.seaofnodes.simple.IterPeeps;
-import com.seaofnodes.simple.Parser;
-import com.seaofnodes.simple.Utils;
+import com.seaofnodes.simple.*;
import com.seaofnodes.simple.type.Type;
import com.seaofnodes.simple.type.TypeFunPtr;
import java.util.BitSet;
@@ -73,7 +70,9 @@ public class FunNode extends RegionNode {
// If no default/unknown caller, use the normal RegionNode ideal rules
// to collapse
if( unknownCallers() ) return null;
- return super.idealize();
+ Node progress = super.idealize();
+ if( progress!=null ) IterPeeps.add( CodeGen.CODE._stop);
+ return progress;
}
// Bypass Region idom, always assume depth == 1, one more than Start