]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/codegen/ssa/SSABlock.java
Merged changes from feature/scl to master.
[simantics/platform.git] / bundles / org.simantics.scl.compiler / src / org / simantics / scl / compiler / internal / codegen / ssa / SSABlock.java
index 3c6c114cb67909ff793eefc305d83aec8defbabd..405e31ddd083be4451d77f0d93c6bcb2a0e7d1d2 100644 (file)
@@ -22,6 +22,7 @@ import org.simantics.scl.compiler.internal.codegen.utils.PrintingContext;
 import org.simantics.scl.compiler.internal.codegen.utils.SSALambdaLiftingContext;\r
 import org.simantics.scl.compiler.internal.codegen.utils.SSASimplificationContext;\r
 import org.simantics.scl.compiler.internal.codegen.utils.SSAValidationContext;\r
 import org.simantics.scl.compiler.internal.codegen.utils.SSALambdaLiftingContext;\r
 import org.simantics.scl.compiler.internal.codegen.utils.SSASimplificationContext;\r
 import org.simantics.scl.compiler.internal.codegen.utils.SSAValidationContext;\r
+import org.simantics.scl.compiler.internal.codegen.utils.ValRefVisitor;\r
 import org.simantics.scl.compiler.top.SCLCompilerConfiguration;\r
 import org.simantics.scl.compiler.types.TVar;\r
 import org.simantics.scl.compiler.types.Type;\r
 import org.simantics.scl.compiler.top.SCLCompilerConfiguration;\r
 import org.simantics.scl.compiler.types.TVar;\r
 import org.simantics.scl.compiler.types.Type;\r
@@ -533,5 +534,12 @@ public final class SSABlock extends Cont implements Printable, BoundVarBinder {
             stat.prepare(mb);\r
         exit.prepare(mb);\r
     }\r
             stat.prepare(mb);\r
         exit.prepare(mb);\r
     }\r
+\r
+    public void forValRefs(ValRefVisitor visitor) {\r
+        for(SSAStatement statement = firstStatement;\r
+                statement != null; statement = statement.next)\r
+            statement.forValRefs(visitor);\r
+        exit.forValRefs(visitor);\r
+    }\r
     \r
 }\r
     \r
 }\r