projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Adjust SETcc instruction encoding on x86-64.
[sbcl.git]
/
src
/
compiler
/
sparc
/
arith.lisp
diff --git
a/src/compiler/sparc/arith.lisp
b/src/compiler/sparc/arith.lisp
index
de8d3e6
..
b190cba
100644
(file)
--- a/
src/compiler/sparc/arith.lisp
+++ b/
src/compiler/sparc/arith.lisp
@@
-780,7
+780,7
@@
;;;
(define-vop (fast-eql/fixnum fast-conditional)
;;;
(define-vop (fast-eql/fixnum fast-conditional)
- (:args (x :scs (any-reg descriptor-reg zero))
+ (:args (x :scs (any-reg zero))
(y :scs (any-reg zero)))
(:arg-types tagged-num tagged-num)
(:note "inline fixnum comparison")
(y :scs (any-reg zero)))
(:arg-types tagged-num tagged-num)
(:note "inline fixnum comparison")
@@
-791,11
+791,13
@@
(inst nop)))
;;;
(define-vop (generic-eql/fixnum fast-eql/fixnum)
(inst nop)))
;;;
(define-vop (generic-eql/fixnum fast-eql/fixnum)
+ (:args (x :scs (any-reg descriptor-reg))
+ (y :scs (any-reg)))
(:arg-types * tagged-num)
(:variant-cost 7))
(define-vop (fast-eql-c/fixnum fast-conditional/fixnum)
(:arg-types * tagged-num)
(:variant-cost 7))
(define-vop (fast-eql-c/fixnum fast-conditional/fixnum)
- (:args (x :scs (any-reg descriptor-reg zero)))
+ (:args (x :scs (any-reg zero)))
(:arg-types tagged-num (:constant (signed-byte 11)))
(:info target not-p y)
(:translate eql)
(:arg-types tagged-num (:constant (signed-byte 11)))
(:info target not-p y)
(:translate eql)
@@
-805,6
+807,7
@@
(inst nop)))
;;;
(define-vop (generic-eql-c/fixnum fast-eql-c/fixnum)
(inst nop)))
;;;
(define-vop (generic-eql-c/fixnum fast-eql-c/fixnum)
+ (:args (x :scs (any-reg descriptor-reg)))
(:arg-types * (:constant (signed-byte 11)))
(:variant-cost 6))
(:arg-types * (:constant (signed-byte 11)))
(:variant-cost 6))
@@
-1040,7
+1043,7
@@
(inst sra digit fixnum n-fixnum-tag-bits)))
(define-vop (bignum-floor)
(inst sra digit fixnum n-fixnum-tag-bits)))
(define-vop (bignum-floor)
- (:translate sb!bignum:%floor)
+ (:translate sb!bignum:%bigfloor)
(:policy :fast-safe)
(:args (div-high :scs (unsigned-reg) :target rem)
(div-low :scs (unsigned-reg) :target quo)
(:policy :fast-safe)
(:args (div-high :scs (unsigned-reg) :target rem)
(div-low :scs (unsigned-reg) :target quo)
@@
-1064,7
+1067,7
@@
(inst not quo)))
(define-vop (bignum-floor-v8)
(inst not quo)))
(define-vop (bignum-floor-v8)
- (:translate sb!bignum:%floor)
+ (:translate sb!bignum:%bigfloor)
(:policy :fast-safe)
(:args (div-high :scs (unsigned-reg) :target rem)
(div-low :scs (unsigned-reg) :target quo)
(:policy :fast-safe)
(:args (div-high :scs (unsigned-reg) :target rem)
(div-low :scs (unsigned-reg) :target quo)
@@
-1093,7
+1096,7
@@
(move quo q))))
(define-vop (bignum-floor-v9)
(move quo q))))
(define-vop (bignum-floor-v9)
- (:translate sb!bignum:%floor)
+ (:translate sb!bignum:%bigfloor)
(:policy :fast-safe)
(:args (div-high :scs (unsigned-reg))
(div-low :scs (unsigned-reg))
(:policy :fast-safe)
(:args (div-high :scs (unsigned-reg))
(div-low :scs (unsigned-reg))