[Git][cmucl/cmucl][sparc64-dev] Fix bad stack offsets
Raymond Toy
rtoy at common-lisp.net
Fri Jan 13 03:34:39 UTC 2017
Raymond Toy pushed to branch sparc64-dev at cmucl / cmucl
Commits:
c94b80e3 by Raymond Toy at 2017-01-12T19:34:29-08:00
Fix bad stack offsets
Was storing code-tn at the wrong stack slot and also storing the
return address offset in the wrong stack slot.
- - - - -
1 changed file:
- src/lisp/sparc64-assem.S
Changes:
=====================================
src/lisp/sparc64-assem.S
=====================================
--- a/src/lisp/sparc64-assem.S
+++ b/src/lisp/sparc64-assem.S
@@ -157,7 +157,7 @@ call_into_c:
mov reg_CSP, reg_CFP
add reg_CSP, 64, reg_CSP
stn reg_OCFP, [reg_CFP]
- stn reg_CODE, [reg_CFP+8]
+ stn reg_CODE, [reg_CFP+2*8]
/* Turn on pseudo-atomic. */
or reg_ALLOC, pseudo_atomic_Value, reg_ALLOC
@@ -165,7 +165,7 @@ call_into_c:
/* Convert the return address to an offset and save it on the stack. */
sub reg_LIP, reg_CODE, reg_L0
add reg_L0, type_OtherPointer, reg_L0
- stn reg_L0, [reg_CFP+2*8]
+ stn reg_L0, [reg_CFP+8]
/* Store LISP state */
store(reg_BSP,current_binding_stack_pointer)
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/commit/c94b80e39f6a6f341b692b8ea7ce51cb76e4f195
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cmucl-cvs/attachments/20170113/7a322455/attachment.html>
More information about the cmucl-cvs
mailing list