aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGen.java6
-rw-r--r--src/test/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGenTests.java6
2 files changed, 6 insertions, 6 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 aa209fb4..9a0b2b75 100644
--- a/src/main/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGen.java
+++ b/src/main/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGen.java
@@ -738,6 +738,12 @@ public class LlvmPatioCodeGen {
context
);
+ context = context.addInstruction(new LlvmStore(
+ LlvmTypes.pointer(LlvmTypes.VOID),
+ previousExceptionHandler,
+ new LlvmVariableGlobal(EXCEPTION_HANDLER_DECLARATION.name())
+ ));
+
yield context;
}
diff --git a/src/test/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGenTests.java b/src/test/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGenTests.java
index 3d1aa836..9490966d 100644
--- a/src/test/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGenTests.java
+++ b/src/test/java/org/shedlang/compiler/backends/llvm/LlvmPatioCodeGenTests.java
@@ -75,12 +75,6 @@ public class LlvmPatioCodeGenTests extends PatioExampleTests {
@Disabled("WIP")
@Test
- public void exceptionHandlerIsDiscardedAfterTry() {
-
- }
-
- @Disabled("WIP")
- @Test
public void thrownValueIsPassedToCatchClause() {
}