X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86%2Fmove.lisp;h=2c198a995774890560a556bec5442b7948cbb367;hb=8f45dd3a5a074998e1aa697ba8f2a8b1b7388427;hp=fa79459e0ff350ee2555eb5019199628b00794d0;hpb=28a6f6aef7408e55853f54f8603a259b7320b084;p=sbcl.git diff --git a/src/compiler/x86/move.lisp b/src/compiler/x86/move.lisp index fa79459..2c198a9 100644 --- a/src/compiler/x86/move.lisp +++ b/src/compiler/x86/move.lisp @@ -130,7 +130,7 @@ (:vop-var vop) (:save-p :compute-only) (:generator 666 - (error-call vop object-not-type-error x type))) + (error-call vop 'object-not-type-error x type))) ;;;; moves and coercions @@ -247,7 +247,7 @@ ;; The assembly routines test the sign flag from this one, so if ;; you change stuff here, make sure the sign flag doesn't get ;; overwritten before the CALL! - (inst test x #xe0000000) + (inst test x #.(ash lowtag-mask (- n-word-bits n-fixnum-tag-bits 1))) ;; Faster but bigger then SHL Y 2. The cost of doing this speculatively ;; is noise compared to bignum consing if that is needed. (inst lea y (make-ea :dword :index x :scale 4))