X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Fbackend.lisp;h=915dec014e70c86c581a3972fd793e001f1f5b9b;hb=b63c4fb9b98fa8188e17ba926e150ba417a74635;hp=04c4e3510c1af48df08629ace4a33229dd4d1998;hpb=0a82f2db352cc348d2107a882e50af222ff97ed3;p=sbcl.git diff --git a/src/compiler/backend.lisp b/src/compiler/backend.lisp index 04c4e35..915dec0 100644 --- a/src/compiler/backend.lisp +++ b/src/compiler/backend.lisp @@ -107,7 +107,7 @@ (defvar *backend-t-primitive-type*) (declaim (type primitive-type *backend-t-primitive-type*)) -;;; a hashtable translating from VOP names to the corresponding VOP-Parse +;;; a hashtable translating from VOP names to the corresponding VOP-PARSE ;;; structures. This information is only used at meta-compile time. (defvar *backend-parsed-vops* (make-hash-table :test 'eq)) (declaim (type hash-table *backend-parsed-vops*)) @@ -133,10 +133,6 @@ ;;; they haven't been installed yet (defvar *backend-internal-errors* nil) (declaim (type (or simple-vector null) *backend-internal-errors*)) - -;;; the maximum number of bytes per page on this system (used by GENESIS) -(defvar *backend-page-size* 0) -(declaim (type index *backend-page-size*)) ;;;; VM support routines @@ -151,19 +147,19 @@ (eval-when (:compile-toplevel :load-toplevel :execute) (defparameter *vm-support-routines* ',routines)) (defstruct (vm-support-routines (:copier nil)) - ,@(mapcar #'(lambda (routine) - `(,routine nil :type (or function null))) + ,@(mapcar (lambda (routine) + `(,routine nil :type (or function null))) routines)) ,@(mapcar - #'(lambda (name) - `(defun ,name (&rest args) - (apply (or (,(symbolicate "VM-SUPPORT-ROUTINES-" - name) - *backend-support-routines*) - (error "machine-specific support ~S ~ - routine undefined" - ',name)) - args))) + (lambda (name) + `(defun ,name (&rest args) + (apply (or (,(symbolicate "VM-SUPPORT-ROUTINES-" + name) + *backend-support-routines*) + (error "machine-specific support ~S ~ + routine undefined" + ',name)) + args))) routines)))) (def-vm-support-routines @@ -180,12 +176,12 @@ make-call-out-tns ;; from call.lisp - standard-argument-location + standard-arg-location make-return-pc-passing-location make-old-fp-passing-location make-old-fp-save-location make-return-pc-save-location - make-argument-count-location + make-arg-count-location make-nfp-tn make-stack-pointer-tn make-number-stack-pointer-tn @@ -195,7 +191,7 @@ ;; from nlx.lisp make-nlx-sp-tn make-dynamic-state-tns - make-nlx-entry-argument-start-location + make-nlx-entry-arg-start-location ;; from support.lisp generate-call-sequence @@ -263,8 +259,10 @@ yet an ideal interface, but it does allow for compile-time conditionalization. |# -;;; The default value of NIL means use only unguarded VOPs. -(defvar *backend-subfeatures* nil) +;;; The default value of NIL means use only unguarded VOPs. The +;;; initial value is customizeable via +;;; customize-backend-subfeatures.lisp +(defvar *backend-subfeatures* '#.sb-cold:*shebang-backend-subfeatures*) ;;; possible *BACKEND-SUBFEATURES* values: ;;;