aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-07-19 21:14:06 +0100
committerMichael Williamson <mike@zwobble.org>2023-07-19 21:14:06 +0100
commit61f34251a1a6418caead1910366d0d26c9408902 (patch)
tree6ebd07c6eedcec5d5172ded6016160d5d088c668 /src/main/java
parentb2a6c26840529ca98b061526e88fbfcd7266983e (diff)
Add Patio code gen for local-load
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/patio/PatioCodeGen.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/main/java/org/shedlang/compiler/patio/PatioCodeGen.java b/src/main/java/org/shedlang/compiler/patio/PatioCodeGen.java
index dfe1e04b..6b4b838f 100644
--- a/src/main/java/org/shedlang/compiler/patio/PatioCodeGen.java
+++ b/src/main/java/org/shedlang/compiler/patio/PatioCodeGen.java
@@ -3,9 +3,11 @@ package org.shedlang.compiler.patio;
import org.pcollections.PVector;
import org.shedlang.compiler.patio.instructions.PatioDiscard;
import org.shedlang.compiler.patio.instructions.PatioInstruction;
+import org.shedlang.compiler.patio.instructions.PatioLocalLoad;
import org.shedlang.compiler.patio.instructions.PatioReturn;
import org.shedlang.compiler.stackir.instructions.DiscardInstruction;
import org.shedlang.compiler.stackir.instructions.Instruction;
+import org.shedlang.compiler.stackir.instructions.LocalLoadInstruction;
import org.shedlang.compiler.stackir.instructions.ReturnInstruction;
import org.shedlang.compiler.util.P;
@@ -17,6 +19,9 @@ public class PatioCodeGen {
case DiscardInstruction discard ->
P.vector(new PatioDiscard(discard.source()));
+ case LocalLoadInstruction localLoad ->
+ P.vector(new PatioLocalLoad(localLoad.name(), localLoad.source()));
+
case ReturnInstruction return_ ->
P.vector(new PatioReturn(return_.source()));