X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fmips%2Ftype-vops.lisp;h=248c4a03313a0fab5718b529e8f5f5cf87f9e397;hb=01cc13c8dab7399f6d7ef10e01add5edbbc03e31;hp=eb0c5f61aafc487de6dda82b345e46ad4d1e35a2;hpb=eb5a5bfb56699ac9e30324c65d46c428bf73a885;p=sbcl.git diff --git a/src/compiler/mips/type-vops.lisp b/src/compiler/mips/type-vops.lisp index eb0c5f6..248c4a0 100644 --- a/src/compiler/mips/type-vops.lisp +++ b/src/compiler/mips/type-vops.lisp @@ -16,15 +16,15 @@ (assemble () (inst and temp value fixnum-tag-mask) (if not-p - (inst bne temp zero-tn target) - (inst beq temp zero-tn target)) + (inst bne temp target) + (inst beq temp target)) (inst nop))) (defun %test-fixnum-and-headers (value target not-p headers &key temp) (let ((drop-through (gen-label))) (assemble () (inst and temp value fixnum-tag-mask) - (inst beq temp zero-tn (if not-p drop-through target))) + (inst beq temp (if not-p drop-through target))) (%test-headers value target not-p nil headers :drop-through drop-through :temp temp))) @@ -33,8 +33,8 @@ (inst and temp value widetag-mask) (inst xor temp immediate) (if not-p - (inst bne temp zero-tn target) - (inst beq temp zero-tn target)) + (inst bne temp target) + (inst beq temp target)) (inst nop))) (defun %test-lowtag (value target not-p lowtag &key temp) @@ -42,8 +42,8 @@ (inst and temp value lowtag-mask) (inst xor temp lowtag) (if not-p - (inst bne temp zero-tn target) - (inst beq temp zero-tn target)) + (inst bne temp target) + (inst beq temp target)) (inst nop))) (defun %test-headers (value target not-p function-p headers @@ -71,9 +71,9 @@ (setf delta header) (if last (if not-p - (inst bne temp zero-tn target) - (inst beq temp zero-tn target)) - (inst beq temp zero-tn when-true))) + (inst bne temp target) + (inst beq temp target)) + (inst beq temp when-true))) (t (let ((start (car header)) (end (cdr header))) @@ -151,16 +151,16 @@ (values target not-target)) (assemble () (inst and temp value fixnum-tag-mask) - (inst beq temp zero-tn yep) + (inst beq temp yep) (inst and temp value lowtag-mask) (inst xor temp other-pointer-lowtag) - (inst bne temp zero-tn nope) + (inst bne temp nope) (inst nop) (loadw temp value 0 other-pointer-lowtag) (inst xor temp (+ (ash 1 n-widetag-bits) bignum-widetag)) (if not-p - (inst bne temp zero-tn target) - (inst beq temp zero-tn target)) + (inst bne temp target) + (inst beq temp target)) (inst nop))) (values)) @@ -189,27 +189,27 @@ (assemble () ;; Is it a fixnum? (inst and temp value fixnum-tag-mask) - (inst beq temp zero-tn fixnum) + (inst beq temp fixnum) (move temp value t) ;; If not, is it an other pointer? (inst and temp value lowtag-mask) (inst xor temp other-pointer-lowtag) - (inst bne temp zero-tn nope) + (inst bne temp nope) (inst nop) ;; Get the header. (loadw temp value 0 other-pointer-lowtag) ;; Is it one? (inst xor temp (+ (ash 1 n-widetag-bits) bignum-widetag)) - (inst beq temp zero-tn single-word) + (inst beq temp single-word) ;; If it's other than two, we can't be an (unsigned-byte 32) (inst xor temp (logxor (+ (ash 1 n-widetag-bits) bignum-widetag) (+ (ash 2 n-widetag-bits) bignum-widetag))) - (inst bne temp zero-tn nope) + (inst bne temp nope) ;; Get the second digit. (loadw temp value (1+ bignum-digits-offset) other-pointer-lowtag) ;; All zeros, its an (unsigned-byte 32). - (inst beq temp zero-tn yep) + (inst beq temp yep) (inst nop) (inst b nope)