X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fppc%2Farith.lisp;h=f8cb9aa1b44dce12979bf203c4cd2f3cb26bc6af;hb=5745b5a5b2e3b967bf3876b4306f31b3c78495fa;hp=4cbfbb073f5c2b9e2c1fa3629e05792e3f182fc6;hpb=3b7fca49cbf6c48605e7ebc1f57caa3255ca5cfd;p=sbcl.git diff --git a/src/compiler/ppc/arith.lisp b/src/compiler/ppc/arith.lisp index 4cbfbb0..f8cb9aa 100644 --- a/src/compiler/ppc/arith.lisp +++ b/src/compiler/ppc/arith.lisp @@ -459,7 +459,7 @@ (:temporary (:scs (non-descriptor-reg)) temp) (:translate *) (:generator 2 - (inst srawi temp y 2) + (inst srawi temp y n-fixnum-tag-bits) (inst mullw r x temp))) (define-vop (fast-*-c/fixnum=>fixnum fast-fixnum-binop-c) @@ -1165,7 +1165,7 @@ (:results (digit :scs (unsigned-reg))) (:result-types unsigned-num) (:generator 1 - (inst srawi digit fixnum 2))) + (inst srawi digit fixnum n-fixnum-tag-bits))) (define-vop (bignum-floor) @@ -1232,7 +1232,7 @@ (:generator 1 (sc-case res (any-reg - (inst slwi res digit 2)) + (inst slwi res digit n-fixnum-tag-bits)) (signed-reg (move res digit)))))