0.pre7.29:
[sbcl.git] / stems-and-flags.lisp-expr
index a3a4d21..daedc35 100644 (file)
  ("src/compiler/target/parms")
  ("src/code/early-array") ; needs "early-vm" numbers
 
- ("src/code/parse-body")      ; on host for PARSE-BODY
- ("src/code/parse-defmacro")  ; on host for PARSE-DEFMACRO
- ("src/code/extensions")      ; on host for COLLECT, SYMBOLICATE, etc.
- ("src/compiler/deftype")     ; on host for SB!XC:DEFTYPE
- ("src/code/early-alieneval") ; for vars needed both at build and run time
+ ("src/code/parse-body")       ; on host for PARSE-BODY
+ ("src/code/parse-defmacro")   ; on host for PARSE-DEFMACRO
+ ("src/code/early-extensions") ; on host for COLLECT, SYMBOLICATE, etc.
+ ("src/compiler/deftype")      ; on host for SB!XC:DEFTYPE
+ ("src/code/early-alieneval")  ; for vars needed both at build and run time
 
  ("src/code/specializable-array")
 
  ;; accessors.)
  ("src/code/type-class")
 
+ ("src/code/pcounter" :not-host)
+
  ("src/code/lisp-stream" :not-host)
 
  ("src/code/sysmacs" :not-host)
  ;; "maybe should be :BYTE-COMPILE T". Once the system is stable,
  ;; look into them.
 
- ("src/code/early-target-error" :not-host) ; maybe should be :BYTE-COMPILE T
- ;; FIXME: maybe should be called "target-error", with "late-target-error"
- ;; called "condition"
+ ("src/code/target-error" :not-host) ; maybe should be :BYTE-COMPILE T
 
  ;; a comment from classic CMU CL:
  ;;   "These guys can supposedly come in any order, but not really.
 
  ("src/code/module" :not-host) ; maybe should be :BYTE-COMPILE T
 
- #!+sb-interpreter
- ("src/code/eval")
-
- ("src/code/target-eval" :not-host) ; FIXME: uses INFO, wants compiler macro
-
  ("src/code/interr" :not-host)
 
  ("src/code/query"  :not-host) ; maybe should be :BYTE-COMPILE T
 
  ("src/compiler/early-c")
  ("src/compiler/policy")
- ("src/code/numbers")
-
  ("src/code/typedefs")
 
  ;; ("src/code/defbangmacro" was here until sbcl-0.6.7.3.)
 
  ;; The definitions for CONDITION and CONDITION-CLASS depend on
  ;; SLOT-CLASS, defined in classes.lisp.
- ("src/code/late-target-error" :not-host) ; FIXME: maybe should be :BYTE-COMPILE T
+ ("src/code/condition" :not-host) ; FIXME: maybe should be :BYTE-COMPILE T
 
  ("src/compiler/generic/primtype")
 
  ("src/code/macroexpand")
 
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;; files which are only needed in the target system, and/or which are
- ;; only possible in the target system, and which depend in some way 
- ;; (directly or indirectly) on stuff compiled as part of the compiler
+ ;; files which depend in some way (directly or indirectly) on stuff
+ ;; compiled as part of the compiler
 
+ ("src/code/late-extensions") ; needs condition system
  ("src/compiler/generic/target-core" :not-host) ; uses stuff from
-                                            ;   "compiler/generic/core"
+                                                ;   "compiler/generic/core"
 
+ ("src/code/eval"              :not-host) ; uses INFO, wants compiler macro
  ("src/code/target-sap"        :not-host) ; uses SAP-INT-TYPE
  ("src/code/target-package"    :not-host) ; needs "code/package"
  ("src/code/target-random"     :not-host) ; needs "code/random"
  ("src/code/target-hash-table" :not-host) ; needs "code/hash-table"
  ("src/code/reader"            :not-host) ; needs "code/readtable"
  ("src/code/target-pathname"   :not-host) ; needs "code/pathname", maybe 
-                                      ;   should be :BYTE-COMPILE T
+                                          ;   should be :BYTE-COMPILE T
  ("src/code/filesys"           :not-host) ; needs HOST from "code/pathname",
-                                      ;   maybe should be :BYTE-COMPILE T
+                                          ;   maybe should be :BYTE-COMPILE T
  ("src/code/save"              :not-host) ; uses the definition of PATHNAME
-                                      ;   from "code/pathname"
+                                          ;   from "code/pathname"
  ("src/code/sharpm"            :not-host) ; uses stuff from "code/reader"
 
- ;; stuff for byte compilation. Note that although byte code is
+ ;; stuff for byte compilation
+ ;;
+ ;; This is mostly :NOT-HOST because even though byte code is
  ;; "portable", it'd be hard to make it work on the cross-compilation
  ;; host, because fundamental BYTE-FUNCTION-OR-CLOSURE types are
- ;; implemented as FUNCALLABLE-INSTANCEs, and it's not obvious
- ;; how to emulate those in a vanilla ANSI Common Lisp.
+ ;; implemented as FUNCALLABLE-INSTANCEs, and it's not obvious how to
+ ;; emulate those in a vanilla ANSI Common Lisp.
  ("src/code/byte-types" :not-host)
  ("src/compiler/byte-comp")
  ("src/compiler/target-byte-comp" :not-host)
  ("src/compiler/target-disassem"     :not-host)
  ("src/compiler/target/target-insts" :not-host)
 
- ;; the IR1 interpreter (as opposed to the byte code interpreter)
- #!+sb-interpreter ("src/compiler/eval-comp" :not-host)
- #!+sb-interpreter ("src/compiler/eval"      :not-host)
-
  ("src/code/debug" :not-host) ; maybe should be :BYTE-COMPILE T
 
  ;; These can't be compiled until CONDITION and DEFINE-CONDITION
  ;; FIXME: Does this really need stuff from compiler/dump.lisp?
  ("src/compiler/target-dump" :not-host) ; needs stuff from compiler/dump.lisp
 
- ("src/code/cold-init" :not-host) ; needs (SETF EXTERN-ALIEN) macroexpansion
+ ("src/code/cold-init" :not-host ; needs (SETF EXTERN-ALIEN) macroexpansion
+  ;; FIXME: When building sbcl-0.pre7.14.flaky4.5 under sbcl-0.6.12.1
+  ;; with :SB-SHOW on the target *FEATURES* list, cross-compilation of
+  ;; this file gives a WARNING in HEXSTR,
+  ;;   Lisp error during constant folding:
+  ;;   Argument X is not a REAL: NIL
+  ;; This seems to come from DEF!MACRO %WITH-ARRAY-DATA-MACRO code
+  ;; which looks like
+  ;;     (cond (,end
+  ;;            (unless (or ,unsafe? (<= ,end ,size))
+  ;;             ..))
+  ;;           ..)
+  ;; where the system is trying to constant-fold the <= form when the
+  ;; ,END binding is known to be NIL at compile time. Since the <= form 
+  ;; is unreachable in that case, this shouldn't be signalling a WARNING;
+  ;; but as long as it is, we have to ignore it in order to go on.
+  :ignore-failure-p)
 
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;; target macros and DECLAIMs installed at build-the-cross-compiler time