X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86%2Fnlx.lisp;h=d220ffe1b8d842fc9e0f30c4824808b9b532d61b;hb=93c941d86b264637de20aa1b713757b704d4c1a6;hp=4d387f3fd4debc6c2d70966416b3a8186e48fb60;hpb=9c1b233ee05cb343e74e3ec16143cfc4b0161d20;p=sbcl.git diff --git a/src/compiler/x86/nlx.lisp b/src/compiler/x86/nlx.lisp index 4d387f3..d220ffe 100644 --- a/src/compiler/x86/nlx.lisp +++ b/src/compiler/x86/nlx.lisp @@ -40,14 +40,8 @@ ;;;; ;;;; We don't need to save the BSP, because that is handled automatically. -;;; Return a list of TNs that can be used to snapshot the dynamic -;;; state for use with the SAVE- and RESTORE-DYNAMIC-ENVIRONMENT VOPs. -(!def-vm-support-routine make-dynamic-state-tns () - (make-n-tns 3 *backend-t-primitive-type*)) - (define-vop (save-dynamic-state) (:results (catch :scs (descriptor-reg)) - (eval :scs (descriptor-reg)) (alien-stack :scs (descriptor-reg))) (:generator 13 (load-symbol-value catch *current-catch-block*) @@ -55,7 +49,6 @@ (define-vop (restore-dynamic-state) (:args (catch :scs (descriptor-reg)) - (eval :scs (descriptor-reg)) (alien-stack :scs (descriptor-reg))) (:generator 10 (store-symbol-value catch *current-catch-block*) @@ -88,11 +81,11 @@ (storew (make-fixup nil :code-object entry-label) block catch-block-entry-pc-slot))) -;;; Like Make-Unwind-Block, except that we also store in the specified tag, and -;;; link the block into the Current-Catch list. +;;; like MAKE-UNWIND-BLOCK, except that we also store in the specified +;;; tag, and link the block into the CURRENT-CATCH list (define-vop (make-catch-block) (:args (tn) - (tag :scs (descriptor-reg) :to (:result 1))) + (tag :scs (any-reg descriptor-reg) :to (:result 1))) (:info entry-label) (:results (block :scs (any-reg))) (:temporary (:sc descriptor-reg) temp)