X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86%2Fsystem.lisp;h=9b66ca0a565f9ddf44b2a7cf488feb36cdccb050;hb=1e337a63f5a717b531752ed40021b01a86d89b51;hp=c00907e5dc5a255ed0342d6be69dd3fa6351ddcc;hpb=e0bacf086afba98465c33f63893d805e86c4f80f;p=sbcl.git diff --git a/src/compiler/x86/system.lisp b/src/compiler/x86/system.lisp index c00907e..9b66ca0 100644 --- a/src/compiler/x86/system.lisp +++ b/src/compiler/x86/system.lisp @@ -44,7 +44,7 @@ (inst jmp :ne done) ;; Pick off fixnums. - (inst and al-tn 3) + (inst and al-tn fixnum-tag-mask) (inst jmp :e done) ;; must be an other immediate @@ -142,7 +142,7 @@ (:results (res :scs (any-reg descriptor-reg) :from (:argument 0))) (:generator 2 (move res val) - (inst shl res (- n-widetag-bits 2)) + (inst shl res (- n-widetag-bits n-fixnum-tag-bits)) (inst or res (sc-case type (unsigned-reg type) (immediate (tn-value type))))))