[Git][cmucl/cmucl][sparc64-dev] Replace li with v9 version
Raymond Toy
rtoy at common-lisp.net
Wed Jan 3 22:13:57 UTC 2018
Raymond Toy pushed to branch sparc64-dev at cmucl / cmucl
Commits:
5e00e1dc by Raymond Toy at 2018-01-03T14:11:29-08:00
Replace li with v9 version
Also Remove the old version that was 32-bit.
- - - - -
1 changed file:
- src/compiler/sparc64/insts.lisp
Changes:
=====================================
src/compiler/sparc64/insts.lisp
=====================================
--- a/src/compiler/sparc64/insts.lisp
+++ b/src/compiler/sparc64/insts.lisp
@@ -2063,52 +2063,10 @@ about function addresses and register values.")
;;;; li, jali, ji, nop, cmp, not, neg, move, and more
-#-sparc-v9
-(defun %li (reg value)
- (etypecase value
- ((signed-byte 13)
- (inst add reg zero-tn value))
- ((or (signed-byte 32) (unsigned-byte 32))
- (let ((hi (ldb (byte 22 10) value))
- (lo (ldb (byte 10 0) value)))
- (inst sethi reg hi)
- (unless (zerop lo)
- (inst add reg lo))))
- (fixup
- (inst sethi reg value)
- (inst add reg value))))
-
-#+sparc-v9
-(defun %li (reg value)
- (etypecase value
- ((signed-byte 13)
- (inst add reg zero-tn value))
- ((unsigned-byte 32)
- (let ((hi (ldb (byte 22 10) value))
- (lo (ldb (byte 10 0) value)))
- ;; Sethi sets the top 32-bits to zero.
- (inst sethi reg hi)
- (unless (zerop lo)
- (inst add reg lo))))
- ((signed-byte 32)
- (let ((hi (ldb (byte 22 10) value))
- (lo (ldb (byte 10 0) value)))
- ;; Sethi sets the top 32-bits to zero.
- (inst sethi reg hi)
- (unless (zerop lo)
- (inst add reg lo))
- ;; Sign-extend the result
- (inst signx reg)))
- (fixup
- (inst sethi reg value)
- (inst add reg value))))
-
(define-instruction-macro li (reg value)
`(%li ,reg ,value))
-#+sparc-v9
-(progn
-(defun %li64 (reg value &optional temp)
+(defun %li (reg value &optional temp)
(etypecase value
((signed-byte 13)
(inst add reg zero-tn value))
@@ -2168,10 +2126,6 @@ about function addresses and register values.")
(inst sethi reg value)
(inst add reg value))))
-(define-instruction-macro li64 (reg value &optional temp)
- `(%li64 ,reg ,value ,temp))
-
-)
;; Define LDN/STN synthetic instructions to do "natural" loads and
;; stores for 32-bit or 64-bit objects depending on whether this is a
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/commit/5e00e1dc01a4e19469e10d2308374df2e7e1a17b
---
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/commit/5e00e1dc01a4e19469e10d2308374df2e7e1a17b
You're receiving this email because of your account on gitlab.common-lisp.net.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cmucl-cvs/attachments/20180103/390ae8e4/attachment-0001.html>
More information about the cmucl-cvs
mailing list