From 1571152e9e3af98008b4e2c340f7c6f6bcbbac16 Mon Sep 17 00:00:00 2001 From: dtc <dtc> Date: Fri, 14 Aug 1998 07:14:00 +0000 Subject: [PATCH] Cleanup the X86 ports valid-pointer check in sub-access-debug-var-slot to better support modified address maps. --- code/debug-int.lisp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/code/debug-int.lisp b/code/debug-int.lisp index 6f8d57923..96b196077 100644 --- a/code/debug-int.lisp +++ b/code/debug-int.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/debug-int.lisp,v 1.92 1998/07/24 17:17:50 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/debug-int.lisp,v 1.93 1998/08/14 07:14:00 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -3135,9 +3135,16 @@ (= ,val vm:unbound-marker-type) ;; Pointer (and (logand ,val 1) - ;; Check that the pointer is valid. XX Should do - ;; a better job. - (< (lisp::read-only-space-start) ,val #x11000000))) + ;; Check that the pointer is valid. X Could do a + ;; better job. + (or (< (lisp::read-only-space-start) ,val + (* lisp::*read-only-space-free-pointer* + vm:word-bytes)) + (< (lisp::static-space-start) ,val + (* lisp::*static-space-free-pointer* + vm:word-bytes)) + (< (lisp::current-dynamic-space-start) ,val + (sap-int (kernel:dynamic-space-free-pointer)))))) (kernel:make-lisp-obj ,val) :invalid-object))) (ecase (c:sc-offset-scn sc-offset) -- GitLab