Raymond Toy pushed to branch sparc64-dev at cmucl / cmucl
Commits: 7c7966bd by Raymond Toy at 2018-01-03T08:44:07-08:00 Add more NOT-IMPLEMENTED
- - - - - 5318926b by Raymond Toy at 2018-01-03T09:20:12-08:00 Align LRA on 16-byte boundaries
- - - - -
3 changed files:
- src/assembly/sparc64/arith.lisp - src/compiler/sparc64/macros.lisp - src/lisp/sparc64-assem.S
Changes:
===================================== src/assembly/sparc64/arith.lisp ===================================== --- a/src/assembly/sparc64/arith.lisp +++ b/src/assembly/sparc64/arith.lisp @@ -36,6 +36,7 @@ (:temp lra descriptor-reg lra-offset) (:temp nargs any-reg nargs-offset) (:temp ocfp any-reg ocfp-offset)) + (not-implemented "GENERIC-+") (inst andcc zero-tn x fixnum-tag-mask) (inst b :ne DO-STATIC-FUN) (inst andcc zero-tn y fixnum-tag-mask) @@ -80,6 +81,7 @@ (:temp lra descriptor-reg lra-offset) (:temp nargs any-reg nargs-offset) (:temp ocfp any-reg ocfp-offset)) + (not-implemented "GENERIC--") (inst andcc zero-tn x fixnum-tag-mask) (inst b :ne DO-STATIC-FUN) (inst andcc zero-tn y fixnum-tag-mask) @@ -129,6 +131,7 @@ (:temp lra descriptor-reg lra-offset) (:temp nargs any-reg nargs-offset) (:temp ocfp any-reg ocfp-offset)) + (not-implemented "GENERIC-*") ;; If either arg is not a fixnum, call the static function. (inst andcc zero-tn x fixnum-tag-mask) (inst b :ne DO-STATIC-FUN) @@ -138,7 +141,7 @@
;; Remove the tag from one arg so that the result will have the correct ;; fixnum tag. - (inst sra temp x fixnum-tag-bits) + (inst sran temp x fixnum-tag-bits) ;; Compute the produce temp * y and return the double-word product ;; in hi:lo. (cond ((backend-featurep :sparc-64) @@ -228,6 +231,7 @@ (:temp nargs any-reg nargs-offset) (:temp ocfp any-reg ocfp-offset)) + (not-implemented ,name) (inst andcc zero-tn x fixnum-tag-mask) (inst b :ne DO-STATIC-FN) (inst andcc zero-tn y fixnum-tag-mask) @@ -268,6 +272,7 @@ (:temp lra descriptor-reg lra-offset) (:temp nargs any-reg nargs-offset) (:temp ocfp any-reg ocfp-offset)) + (not-implemented "GENERIC-EQL") (inst cmp x y) (inst b :eq RETURN-T) (inst andcc zero-tn x fixnum-tag-mask) @@ -305,6 +310,7 @@ (:temp lra descriptor-reg lra-offset) (:temp nargs any-reg nargs-offset) (:temp ocfp any-reg ocfp-offset)) + (not-implemented "GENERIC-=") (inst andcc zero-tn x fixnum-tag-mask) (inst b :ne DO-STATIC-FN) (inst andcc zero-tn y fixnum-tag-mask) @@ -341,6 +347,7 @@ (:temp lra descriptor-reg lra-offset) (:temp nargs any-reg nargs-offset) (:temp ocfp any-reg ocfp-offset)) + (not-implemented "GENERIC-/=") (inst cmp x y) (inst b :eq RETURN-NIL) (inst andcc zero-tn x fixnum-tag-mask)
===================================== src/compiler/sparc64/macros.lisp ===================================== --- a/src/compiler/sparc64/macros.lisp +++ b/src/compiler/sparc64/macros.lisp @@ -142,7 +142,7 @@ (defmacro emit-return-pc (label) "Emit a return-pc header word. LABEL is the label to use for this return-pc." `(progn - (align lowtag-bits) + (align 4) (emit-label ,label) (inst word 0) (inst lra-header-word)))
===================================== src/lisp/sparc64-assem.S ===================================== --- a/src/lisp/sparc64-assem.S +++ b/src/lisp/sparc64-assem.S @@ -107,8 +107,9 @@ call_into_lisp: jmp reg_CODE+FUNCTION_CODE_OFFSET nop
- .align 8 + .align 16 lra: + .word 0 .word type_ReturnPcHeader
/* Blow off any extra values. */
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/compare/f52af3436f0f657dfb14d97f1...
--- View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/compare/f52af3436f0f657dfb14d97f1... You're receiving this email because of your account on gitlab.common-lisp.net.