X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86%2Fnlx.lisp;h=79e9ab2ca6af6e44e92a2a9eec7ddff395ada81f;hb=9321245540a085e398a238f544364510de9ec562;hp=2550896409098b42b6c824bccc1f606949204531;hpb=82653abf5573c22c691e2243b70647ecdaa6aea8;p=sbcl.git diff --git a/src/compiler/x86/nlx.lisp b/src/compiler/x86/nlx.lisp index 2550896..79e9ab2 100644 --- a/src/compiler/x86/nlx.lisp +++ b/src/compiler/x86/nlx.lisp @@ -43,11 +43,10 @@ ;;; 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*)) + (make-n-tns 2 *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 +54,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*) @@ -92,7 +90,7 @@ ;;; 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)