X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Fbackend.lisp;h=6c0c529214907da4ecfd807e7297f1ca58551c06;hb=aa2dc9529460ea0d9c99998dc87283fc1a43e808;hp=9a58ec8c54912562bc36446b4ca175a37dc791eb;hpb=cea4896b2482b7b2b429c1631d774b4cfbc0efba;p=sbcl.git diff --git a/src/compiler/backend.lisp b/src/compiler/backend.lisp index 9a58ec8..6c0c529 100644 --- a/src/compiler/backend.lisp +++ b/src/compiler/backend.lisp @@ -23,19 +23,8 @@ ;;;; miscellaneous backend properties -;;; the conventional file extension for fasl files on this architecture, -;;; e.g. "x86f" -(defvar *backend-fasl-file-type* nil) -(declaim (type (or simple-string null) *backend-fasl-file-type*)) - -;;; implementation and version of fasl files used -(defvar *backend-fasl-file-implementation* nil) -(defvar *backend-fasl-file-version* nil) -(declaim (type (or keyword null) *backend-fasl-file-implementation*)) -(declaim (type (or index null) *backend-fasl-file-version*)) - -;;; the number of references that a TN must have to offset the overhead of -;;; saving the TN across a call +;;; the number of references that a TN must have to offset the +;;; overhead of saving the TN across a call (defvar *backend-register-save-penalty* 0) (declaim (type index *backend-register-save-penalty*)) @@ -116,7 +105,7 @@ ;;; The T primitive-type is kept in this variable so that people who ;;; have to special-case it can get at it conveniently. This variable ;;; has to be set by the machine-specific VM definition, since the -;;; DEF-PRIMITIVE-TYPE for T must specify the SCs that boxed objects +;;; !DEF-PRIMITIVE-TYPE for T must specify the SCs that boxed objects ;;; can be allocated in. (defvar *backend-t-primitive-type*) (declaim (type primitive-type *backend-t-primitive-type*)) @@ -168,7 +157,7 @@ `(progn (eval-when (:compile-toplevel :load-toplevel :execute) (defparameter *vm-support-routines* ',routines)) - (defstruct vm-support-routines + (defstruct (vm-support-routines (:copier nil)) ,@(mapcar #'(lambda (routine) `(,routine nil :type (or function null))) routines)) @@ -225,7 +214,7 @@ (defprinter (vm-support-routines)) -(defmacro def-vm-support-routine (name ll &body body) +(defmacro !def-vm-support-routine (name ll &body body) (unless (member (intern (string name) (find-package "SB!C")) *vm-support-routines*) (warn "unknown VM support routine: ~A" name)) @@ -242,13 +231,3 @@ ;;; the VM support routines (defvar *backend-support-routines* (make-vm-support-routines)) (declaim (type vm-support-routines *backend-support-routines*)) - -;;;; utilities - -(defun backend-byte-fasl-file-implementation () - *backend-byte-order*) - -(defun backend-byte-fasl-file-type () - (ecase *backend-byte-order* - (:big-endian "bytef") - (:little-endian "lbytef")))