0.7.1.26:
authorWilliam Harold Newman <william.newman@airmail.net>
Wed, 27 Feb 2002 04:09:51 +0000 (04:09 +0000)
committerWilliam Harold Newman <william.newman@airmail.net>
Wed, 27 Feb 2002 04:09:51 +0000 (04:09 +0000)
merged CSR backend-subfeatures patch (sbcl-devel 2002-02-22)

.cvsignore
src/cold/chill.lisp
src/cold/shared.lisp
src/compiler/backend.lisp
version.lisp-expr

index 8771e24..3dc13ee 100644 (file)
@@ -1,5 +1,6 @@
 obj
 output
 ChangeLog
+customize-backend-subfeatures.lisp
 customize-target-features.lisp
 local-target-features.lisp-expr
index 50f0b9e..7158435 100644 (file)
@@ -26,7 +26,9 @@
 ;;; that they referred to special target-only *SHEBANG-FEATURES* values
 ;;; during cold init).
 (setf sb-cold:*shebang-features* *features*)
-
+;;; Just in case we want to play with the initial value of
+;;; backend-subfeatures
+(setf sb-cold:*shebang-backend-subfeatures* sb-c:*backend-subfeatures*)
 ;;; The nickname SB!XC now refers to the CL package.
 (rename-package "COMMON-LISP"
                "COMMON-LISP"
index 0abec7b..b4ff892 100644 (file)
   (format t
          "target features *SHEBANG-FEATURES*=~@<~S~:>~%"
          *shebang-features*))
+
+(defvar *shebang-backend-subfeatures*
+  (let* ((default-subfeatures nil)
+        (customizer-file-name "customize-backend-subfeatures.lisp")
+        (customizer (if (probe-file customizer-file-name)
+                        (compile nil 
+                                 (read-from-file customizer-file-name))
+                        #'identity)))
+    (funcall customizer default-subfeatures)))
+(export '*shebang-backend-subfeatures*)
+(let ((*print-length* nil)
+      (*print-level* nil))
+  (format t
+         "target backend-subfeatures *SHEBANG-BACKEND-FEATURES*=~@<~S~:>~%"
+         *shebang-backend-subfeatures*))
 \f
 ;;;; cold-init-related PACKAGE and SYMBOL tools
 
index 20d21cc..0184618 100644 (file)
@@ -263,8 +263,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:
 ;;;
index c427b5a..2b6ff5c 100644 (file)
@@ -18,4 +18,4 @@
 ;;; for internal versions, especially for internal versions off the
 ;;; main CVS branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
 
-"0.7.1.25"
+"0.7.1.26"