X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fsparc%2Finsts.lisp;h=7f05f7142eeff2d4a3788aaa5d8ce38e246a82fb;hb=cf607a404d7518e8a18c9e362913f370eb9a5e38;hp=c378b73b60f32b6d741bae1cd3c70c99f8d082d5;hpb=ea775867d48327bf1179eb570263427f28083880;p=sbcl.git diff --git a/src/compiler/sparc/insts.lisp b/src/compiler/sparc/insts.lisp index c378b73..7f05f71 100644 --- a/src/compiler/sparc/insts.lisp +++ b/src/compiler/sparc/insts.lisp @@ -15,6 +15,9 @@ ;;;(def-assembler-params ;;; :scheduler-p t ;;; :max-locations 100) +(eval-when (:compile-toplevel :load-toplevel :execute) + (setf sb!assem:*assem-scheduler-p* t) + (setf sb!assem:*assem-max-locations* 100)) ;;; Constants, types, conversion functions, some disassembler stuff. (defun reg-tn-encoding (tn) @@ -129,7 +132,7 @@ about function addresses and register values.") `(,(eval nn) ,nn))) names))) `(eval-when (:compile-toplevel :load-toplevel :execute) - (defconstant header-word-type-alist + (def!constant header-word-type-alist ',results))))) ;; This is the same list as in objdefs. (frob bignum @@ -381,7 +384,7 @@ about function addresses and register values.") (error "Unknown branch condition: ~S~%Must be one of: ~S" condition branch-conditions))) -(defconstant branch-cond-true +(def!constant branch-cond-true #b1000) (defconstant-eqx branch-fp-conditions @@ -929,7 +932,7 @@ about function addresses and register values.") (eval-when (:compile-toplevel :execute) -;;; have to do this because defconstant is evalutated in the null lex env. +;;; have to do this because def!constant is evalutated in the null lex env. (defmacro with-ref-format (printer) `(let* ((addend '(:choose (:plus-integer immed) ("+" rs2))) @@ -946,7 +949,7 @@ about function addresses and register values.") (with-ref-format `(:NAME :TAB rd ", " ,ref-format)) #'equalp) -) ; eval-when (compile eval) +) ; EVAL-WHEN (macrolet ((define-f3-inst (name op op3 &key fixup load-store (dest-kind 'reg) (printer :default) reads writes flushable print-name) @@ -1675,8 +1678,8 @@ about function addresses and register values.") (define-unary-fp-inst fxtoq #b010001100 :reads :fsr :extended t) ; v9 - ;; I (toy@rtp.ericsson.se) don't think these f{sd}toir instructions - ;; exist on any Ultrasparc, but I only have a V9 manual. The code in + ;; I (Raymond Toy) don't think these f{sd}toir instructions exist on + ;; any Ultrasparc, but I only have a V9 manual. The code in ;; float.lisp seems to indicate that they only existed on non-sun4 ;; machines (sun3 68K machines?). (define-unary-fp-inst fstoir #b011000001 :reads :fsr)