X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcold%2Fdefun-load-or-cload-xcompiler.lisp;h=d489b039bc8347758b095b947b71eaebd88276b0;hb=602c9b1f15e2d96e4b79a3341a734b5eb8e02093;hp=cadc1b9d763bc69f747093d26897540533af73dd;hpb=2e91e29892268b2c7e5ab557e8192fa03bce68f2;p=sbcl.git diff --git a/src/cold/defun-load-or-cload-xcompiler.lisp b/src/cold/defun-load-or-cload-xcompiler.lisp index cadc1b9..d489b03 100644 --- a/src/cold/defun-load-or-cload-xcompiler.lisp +++ b/src/cold/defun-load-or-cload-xcompiler.lisp @@ -13,6 +13,8 @@ ;;; cross-compilation host Common Lisp. (defun load-or-cload-xcompiler (load-or-cload-stem) + (declare (type function load-or-cload-stem)) + ;; The running-in-the-host-Lisp Python cross-compiler defines its ;; own versions of a number of functions which should not overwrite ;; host-Lisp functions. Instead we put them in a special package. @@ -88,9 +90,16 @@ ;; everything else which needs a separate ;; existence in xc and target + "BOOLE" + "BOOLE-CLR" "BOOLE-SET" "BOOLE-1" "BOOLE-2" + "BOOLE-C1" "BOOLE-C2" "BOOLE-AND" "BOOLE-IOR" + "BOOLE-XOR" "BOOLE-EQV" "BOOLE-NAND" "BOOLE-NOR" + "BOOLE-ANDC1" "BOOLE-ANDC2" "BOOLE-ORC1" "BOOLE-ORC2" "BUILT-IN-CLASS" "BYTE" "BYTE-POSITION" "BYTE-SIZE" + "CHAR-CODE" "CLASS" "CLASS-NAME" "CLASS-OF" + "CODE-CHAR" "COMPILE-FILE" "COMPILE-FILE-PATHNAME" "*COMPILE-FILE-PATHNAME*" @@ -121,39 +130,25 @@ "STRUCTURE-CLASS" "SUBTYPEP" "TYPE-OF" "TYPEP" + "UPGRADED-ARRAY-ELEMENT-TYPE" + "UPGRADED-COMPLEX-PART-TYPE" "WITH-COMPILATION-UNIT")) (export (intern name package-name) package-name))) ;; don't watch: - (dolist (package-name '("SB!ALIEN" - "SB!ALIEN-INTERNALS" - "SB!ASSEM" - "SB!BIGNUM" - "SB!C" - "SB!DEBUG" - "SB!DI" - "SB!DISASSEM" - #!+sb-dyncount "SB!DYNCOUNT" - "SB!FASL" - "SB!IMPL" - "SB!EXT" - "SB!FORMAT" - "SB!GRAY" - "SB!INT" - "SB!KERNEL" - "SB!LOOP" - #!+mp "SB!MP" - "SB!PCL" - "SB!PRETTY" - "SB!PROFILE" - "SB!SYS" - "SB!UNIX" - "SB!VM" - "SB!WALKER")) - (shadowing-import (mapcar (lambda (name) (find-symbol name "SB-XC")) - '("BYTE" "BYTE-POSITION" "BYTE-SIZE" - "DPB" "LDB" "LDB-TEST" - "DEPOSIT-FIELD" "MASK-FIELD")) - package-name)) + (dolist (package (list-all-packages)) + (when (= (mismatch (package-name package) "SB!") 3) + (shadowing-import + (mapcar (lambda (name) (find-symbol name "SB-XC")) + '("BYTE" "BYTE-POSITION" "BYTE-SIZE" + "DPB" "LDB" "LDB-TEST" + "DEPOSIT-FIELD" "MASK-FIELD" + + "BOOLE" + "BOOLE-CLR" "BOOLE-SET" "BOOLE-1" "BOOLE-2" + "BOOLE-C1" "BOOLE-C2" "BOOLE-AND" "BOOLE-IOR" + "BOOLE-XOR" "BOOLE-EQV" "BOOLE-NAND" "BOOLE-NOR" + "BOOLE-ANDC1" "BOOLE-ANDC2" "BOOLE-ORC1" "BOOLE-ORC2")) + package))) ;; Build a version of Python to run in the host Common Lisp, to be ;; used only in cross-compilation.