summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>2003-12-20 10:54:52 +0000
committerXavier Leroy <xavier.leroy@inria.fr>2003-12-20 10:54:52 +0000
commit37e20a0e9394cc78a63e53fe5b99411a4e74bba0 (patch)
tree0f7cb6c3636ae632d4241030769ddf686bc00895
parentf981f63f80122e2b130ca6a4657e1e74032f157d (diff)
Bug dans raise_caml_exception (r14, r15 not correctly reinitialized)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6029 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
-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 */