diff --git a/compiler/rt/mc68881.lisp b/compiler/rt/mc68881.lisp index a7488bed942d021e1779fc2cb2820372fcff91d2..e32ed4694c5ec110fd1acc7e256c9d5bac7e7de7 100644 --- a/compiler/rt/mc68881.lisp +++ b/compiler/rt/mc68881.lisp @@ -440,13 +440,13 @@ (define-vop (make-mc68881-double-float) (:args (hi-bits :scs (signed-reg)) (lo-bits :scs (unsigned-reg))) + (:arg-types signed-num unsigned-num) (:results (res :scs (mc68881-double-reg) :load-if (not (sc-is res double-stack)))) - (:temporary (:scs (double-stack)) temp) - (:arg-types signed-num unsigned-num) (:result-types mc68881-double-float) - (:temporary (:sc sap-reg) scratch) - (:temporary (:sc word-pointer-reg) addr) + (:temporary (:scs (double-stack)) temp) + (:temporary (:sc sap-reg :from (:eval 0)) scratch) + (:temporary (:sc word-pointer-reg :from (:eval 0)) addr) (:translate make-double-float) (:policy :fast-safe) (:vop-var vop)