summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--asmrun/amd64.S3
1 files changed, 2 insertions, 1 deletions
diff --git a/asmrun/amd64.S b/asmrun/amd64.S
index 8168ee7df..2228f7926 100644
--- a/asmrun/amd64.S
+++ b/asmrun/amd64.S
@@ -252,7 +252,8 @@ FUNCTION(caml_start_program)
FUNCTION(raise_caml_exception)
movq %rdi, %rax
movq caml_exception_pointer(%rip), %rsp
- popq caml_exception_pointer(%rip)
+ popq %r14 /* Recover previous exception handler */
+ movq youg_ptr(%rip), %r15 /* Reload alloc ptr */
ret
/* Callback from C to Caml */