aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/shedlang/compiler/backends
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-12-03 11:50:45 +0000
committerMichael Williamson <mike@zwobble.org>2023-12-03 11:50:45 +0000
commit96ac268ff5f1ae25915c19f4d7810dbdccb4dc60 (patch)
treefd7535195013dbffa5a7d6e2f8032062602c7b0a /src/main/java/org/shedlang/compiler/backends
parent9688f65cec6e119659e23efd45d2b9aaa63461e0 (diff)
Add return-void instruction to Patio
Diffstat (limited to 'src/main/java/org/shedlang/compiler/backends')
-rw-r--r--src/main/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGen.java3
-rw-r--r--src/main/java/org/shedlang/compiler/backends/wasm/WasmPatioCodeGen.java4
2 files changed, 7 insertions, 0 deletions
diff --git a/src/main/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGen.java b/src/main/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGen.java
index 12c58729..2129ebc6 100644
--- a/src/main/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGen.java
+++ b/src/main/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGen.java
@@ -554,6 +554,9 @@ public class LlvmPatioCodeGen {
patioOperandToLlvmOperand(patioReturn.value(), context)
));
+ case PatioReturnVoid patioReturnVoid ->
+ throw new UnsupportedOperationException("TODO");
+
case PatioSwitch patioSwitch -> {
var switchDefaultStartLabelResult = context.allocateLocalName(
LlvmCodeGenLocalVariableSpace.SWITCH_DEFAULT_START
diff --git a/src/main/java/org/shedlang/compiler/backends/wasm/WasmPatioCodeGen.java b/src/main/java/org/shedlang/compiler/backends/wasm/WasmPatioCodeGen.java
index 3f7e7eca..f83aa2d3 100644
--- a/src/main/java/org/shedlang/compiler/backends/wasm/WasmPatioCodeGen.java
+++ b/src/main/java/org/shedlang/compiler/backends/wasm/WasmPatioCodeGen.java
@@ -321,6 +321,10 @@ public class WasmPatioCodeGen {
yield context;
}
+ case PatioReturnVoid patioReturnVoid -> {
+ throw new UnsupportedOperationException("TODO");
+ }
+
case PatioSwitch patioSwitch -> {
// TODO: use br_table?
var wasmBlockType = generateBlockType(patioSwitch.targets());