X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86%2Falloc.lisp;h=24a22781b2ffe63cf211e3534cf711618210d069;hb=d306e2d23b38487488eb93881dad836e439e0c77;hp=fa976503e21e9f9bc2506d26d8e160cf45f6bded;hpb=aab81dccfb1a311eac523a855004a3669340aca6;p=sbcl.git diff --git a/src/compiler/x86/alloc.lisp b/src/compiler/x86/alloc.lisp index fa97650..24a2278 100644 --- a/src/compiler/x86/alloc.lisp +++ b/src/compiler/x86/alloc.lisp @@ -115,12 +115,12 @@ (storew length result vector-length-slot other-pointer-lowtag))))))) (define-vop (allocate-vector-on-stack) - (:args (type :scs (unsigned-reg immediate)) - (length :scs (any-reg)) + (:args (type :scs (unsigned-reg immediate) :to :save) + (length :scs (any-reg) :to :eval :target zero) (words :scs (any-reg) :target ecx)) (:temporary (:sc any-reg :offset ecx-offset :from (:argument 2)) ecx) - (:temporary (:sc any-reg :offset eax-offset :from (:argument 2)) zero) - (:temporary (:sc any-reg :offset edi-offset :from (:argument 0)) res) + (:temporary (:sc any-reg :offset eax-offset :from :eval) zero) + (:temporary (:sc any-reg :offset edi-offset) res) (:results (result :scs (descriptor-reg) :from :load)) (:arg-types positive-fixnum positive-fixnum @@ -198,7 +198,7 @@ (define-vop (make-unbound-marker) (:args) - (:results (result :scs (any-reg))) + (:results (result :scs (descriptor-reg any-reg))) (:generator 1 (inst mov result unbound-marker-widetag)))