Raymond Toy pushed to branch rtoy-make-double-unsigned at cmucl / cmucl
Commits: f3dee356 by Raymond Toy at 2017-12-29T14:35:37-08:00 Update MAKE-DOUBLE-FLOAT vop for unsigned
Update vop for sparc and ppc to accept unsigned first arg instead of signed, like on x86, allowing MAKE-DOUBLE-FLOAT to support both signed and unsigned 32-bit integers (for the first arg).
- - - - -
2 changed files:
- src/compiler/ppc/float.lisp - src/compiler/sparc/float.lisp
Changes:
===================================== src/compiler/ppc/float.lisp ===================================== --- a/src/compiler/ppc/float.lisp +++ b/src/compiler/ppc/float.lisp @@ -733,12 +733,12 @@ (* (tn-offset res) vm:word-bytes)))))))))
(define-vop (make-double-float) - (:args (hi-bits :scs (signed-reg)) + (:args (hi-bits :scs (unsigned-reg)) (lo-bits :scs (unsigned-reg))) (:results (res :scs (double-reg) :load-if (not (sc-is res double-stack)))) (:temporary (:scs (double-stack)) temp) - (:arg-types signed-num unsigned-num) + (:arg-types unsigned-num unsigned-num) (:result-types double-float) (:translate make-double-float) (:policy :fast-safe)
===================================== src/compiler/sparc/float.lisp ===================================== --- a/src/compiler/sparc/float.lisp +++ b/src/compiler/sparc/float.lisp @@ -1297,12 +1297,12 @@ (* (tn-offset res) vm:word-bytes)))))))))
(define-vop (make-double-float) - (:args (hi-bits :scs (signed-reg)) + (:args (hi-bits :scs (unsigned-reg)) (lo-bits :scs (unsigned-reg))) (:results (res :scs (double-reg) :load-if (not (sc-is res double-stack)))) (:temporary (:scs (double-stack)) temp) - (:arg-types signed-num unsigned-num) + (:arg-types unsigned-num unsigned-num) (:result-types double-float) (:translate make-double-float) (:policy :fast-safe)
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/commit/f3dee356f056915accbb5f22ad...
--- View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/commit/f3dee356f056915accbb5f22ad... You're receiving this email because of your account on gitlab.common-lisp.net.