X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=inline;f=src%2Fcode%2Ftoplevel.lisp;h=607113183f93100c75a3c2ce301e196bb4ee0974;hb=7306e23c5a4687bef98fdfb3459aaf15fe79d5ca;hp=bc4681842a3672efb4095020527fe73d21551b4d;hpb=e44def4f38e02f0e49ed4f3464d0685e3f6f5e86;p=sbcl.git diff --git a/src/code/toplevel.lisp b/src/code/toplevel.lisp index bc46818..6071131 100644 --- a/src/code/toplevel.lisp +++ b/src/code/toplevel.lisp @@ -20,6 +20,7 @@ (progn (defvar sb!vm::*current-catch-block*) (defvar sb!vm::*current-unwind-protect-block*) + #!+hpux (defvar sb!vm::*c-lra*) (defvar *free-interrupt-context-index*)) ;;; specials initialized by !COLD-INIT @@ -207,7 +208,7 @@ command-line.") (initial-offset (logand csp (1- bytes-per-scrub-unit))) (end-of-stack (- (sap-int (sb!di::descriptor-sap sb!vm:*control-stack-end*)) - sb!c:*backend-page-bytes*))) + (* 2 sb!c:*backend-page-bytes*)))) (labels ((scrub (ptr offset count) (declare (type system-area-pointer ptr) @@ -239,8 +240,9 @@ command-line.") #!+stack-grows-downward-not-upward (let* ((csp (sap-int (sb!c::control-stack-pointer-sap))) - (end-of-stack (+ (sap-int (sb!di::descriptor-sap sb!vm:*control-stack-start*)) - sb!c:*backend-page-bytes*)) + (end-of-stack (+ (sap-int + (sb!di::descriptor-sap sb!vm:*control-stack-start*)) + (* 2 sb!c:*backend-page-bytes*))) (initial-offset (logand csp (1- bytes-per-scrub-unit)))) (labels ((scrub (ptr offset count) @@ -289,13 +291,13 @@ command-line.") (defvar +++ nil #!+sb-doc "the previous value of ++") (defvar - nil #!+sb-doc "the form currently being evaluated") -(defun interactive-eval (form) +(defun interactive-eval (form &key (eval #'eval)) #!+sb-doc "Evaluate FORM, returning whatever it returns and adjusting ***, **, *, +++, ++, +, ///, //, /, and -." (setf - form) (unwind-protect - (let ((results (multiple-value-list (eval form)))) + (let ((results (multiple-value-list (funcall eval form)))) (setf /// // // / / results @@ -619,7 +621,6 @@ that provides the REPL for the system. Assumes that *STANDARD-INPUT* and (with-simple-restart (abort "~@") (catch 'toplevel-catcher - #!-win32 (sb!unix::reset-signal-mask) ;; In the event of a control-stack-exhausted-error, we ;; should have unwound enough stack by the time we get ;; here that this is now possible.