("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")
("src/code/early-cl")
- ("src/code/early-load")
+ ("src/code/early-fasl")
;; mostly needed by stuff from comcom, but also used by "x86-vm"
("src/code/debug-var-io")
;; 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/compiler/trace-table") ; needs EMIT-LABEL macro from compiler/assem.lisp
- ;; Compiling this file requires fop definitions from code/fop.lisp
- ;; and trace table definitions from compiler/trace-table.lisp.
+ ;; Compiling this requires fop definitions from code/fop.lisp and
+ ;; trace table definitions from compiler/trace-table.lisp.
("src/compiler/dump")
- ("src/compiler/main") ; needs DEFSTRUCT FASL-FILE from compiler/dump.lisp
+ ("src/compiler/main") ; needs DEFSTRUCT FASL-OUTPUT from dump.lisp
("src/compiler/target-main" :not-host)
("src/compiler/ir1tran")
("src/compiler/ir1util")
#!+sb-dyncount ("src/compiler/dyncount")
#!+sb-dyncount ("src/code/dyncount")
- ;; needed by OPEN-FASL-FILE, which is called by COMPILE-FILE
+ ;; needed by OPEN-FASL-OUTPUT, which is called by COMPILE-FILE
("src/code/format-time")
;; needed by various unhappy-path cases in the cross-compiler
("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