X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86%2Fvm.lisp;h=7cc96e8bdf926fe87c2c15092d5fa9f64b259bd6;hb=d306e2d23b38487488eb93881dad836e439e0c77;hp=b7320e8ec34a5e4019400ea3795d9ab720abb738;hpb=a98da03220d7345b066e4092285f0dfce55d9374;p=sbcl.git diff --git a/src/compiler/x86/vm.lisp b/src/compiler/x86/vm.lisp index b7320e8..7cc96e8 100644 --- a/src/compiler/x86/vm.lisp +++ b/src/compiler/x86/vm.lisp @@ -118,7 +118,7 @@ ;;; the new way: (define-storage-base float-registers :finite :size 8) -(define-storage-base stack :unbounded :size 8) +(define-storage-base stack :unbounded :size 3 :size-increment 1) (define-storage-base constant :non-packed) (define-storage-base immediate-constant :non-packed) (define-storage-base noise :unbounded :size 2) @@ -382,7 +382,7 @@ ;;; If value can be represented as an immediate constant, then return ;;; the appropriate SC number, otherwise return NIL. -(!def-vm-support-routine immediate-constant-sc (value) +(defun immediate-constant-sc (value) (typecase value ((or (integer #.sb!xc:most-negative-fixnum #.sb!xc:most-positive-fixnum) character) @@ -408,7 +408,7 @@ (eql value (log 2l0 2.718281828459045235360287471352662L0))) (sc-number-or-lose 'fp-constant))))) -(!def-vm-support-routine boxed-immediate-sc-p (sc) +(defun boxed-immediate-sc-p (sc) (eql sc (sc-number-or-lose 'immediate))) ;; For an immediate TN, return its value encoded for use as a literal. @@ -463,7 +463,7 @@ ;;; This function is called by debug output routines that want a pretty name ;;; for a TN's location. It returns a thing that can be printed with PRINC. -(!def-vm-support-routine location-print-name (tn) +(defun location-print-name (tn) (declare (type tn tn)) (let* ((sc (tn-sc tn)) (sb (sb-name (sc-sb sc))) @@ -489,7 +489,7 @@ (noise (symbol-name (sc-name sc)))))) ;;; FIXME: Could this, and everything that uses it, be made #!+SB-SHOW? -(!def-vm-support-routine combination-implementation-style (node) +(defun combination-implementation-style (node) (declare (type sb!c::combination node)) (flet ((valid-funtype (args result) (sb!c::valid-fun-use node @@ -499,11 +499,11 @@ (logtest (cond ((valid-funtype '(fixnum fixnum) '*) - (values :direct nil)) + (values :maybe nil)) ((valid-funtype '((signed-byte 32) (signed-byte 32)) '*) - (values :direct nil)) + (values :maybe nil)) ((valid-funtype '((unsigned-byte 32) (unsigned-byte 32)) '*) - (values :direct nil)) + (values :maybe nil)) (t (values :default nil)))) (logbitp (cond