X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fdebug-int.lisp;h=57fe61d6bcd9100cde1a66dfc0affc27a3099c7d;hb=4b13aa3a7f0f4c6249e2787f4171e3c362d634c1;hp=61cf4560344ec498ccd1c381eb95133020b81b35;hpb=4a9c5a6fea1bbc62462d328f573dcda2e0e1f8a5;p=sbcl.git diff --git a/src/code/debug-int.lisp b/src/code/debug-int.lisp index 61cf456..57fe61d 100644 --- a/src/code/debug-int.lisp +++ b/src/code/debug-int.lisp @@ -662,8 +662,9 @@ ;;; this function. (defun top-frame () (/noshow0 "entering TOP-FRAME") - (multiple-value-bind (fp pc) (%caller-frame-and-pc) - (compute-calling-frame (descriptor-sap fp) pc nil))) + (compute-calling-frame (descriptor-sap (%caller-frame)) + (%caller-pc) + nil)) ;;; Flush all of the frames above FRAME, and renumber all the frames ;;; below FRAME. @@ -677,7 +678,9 @@ (defun find-saved-frame-down (fp up-frame) (multiple-value-bind (saved-fp saved-pc) (sb!c:find-saved-fp-and-pc fp) (when saved-fp - (compute-calling-frame (descriptor-sap saved-fp) saved-pc up-frame)))) + (compute-calling-frame (descriptor-sap saved-fp) + (descriptor-sap saved-pc) + up-frame)))) ;;; Return the frame immediately below FRAME on the stack; or when ;;; FRAME is the bottom of the stack, return NIL. @@ -878,7 +881,9 @@ (declare (type (unsigned-byte 32) n) (optimize (speed 3) (safety 0))) (sb!alien:sap-alien (sb!vm::current-thread-offset-sap - (+ sb!vm::thread-interrupt-contexts-offset n)) + (+ sb!vm::thread-interrupt-contexts-offset + #!-alpha n + #!+alpha (* 2 n))) (* os-context-t))) #!+(or x86 x86-64)