Optimize EXPT on powers of two.
[sbcl.git] / make-host-1.lisp
blob5f6543c9311a5f6b25c61fb658a76fe15e653eb7
1 ;;; (We want to have some limit on print length and print level during
2 ;;; bootstrapping because PRINT-OBJECT only gets set up rather late,
3 ;;; and running without PRINT-OBJECT it's easy to fall into printing
4 ;;; enormous (or infinitely circular) low-level representations of
5 ;;; things.)
6 (setf *print-level* 5 *print-length* 5)
8 (load "src/cold/shared.lisp")
9 (load "tools-for-build/ldso-stubs.lisp")
10 (in-package "SB-COLD")
11 (setf *host-obj-prefix* "obj/from-host/")
12 (load "src/cold/set-up-cold-packages.lisp")
13 (load "src/cold/defun-load-or-cload-xcompiler.lisp")
15 (set-dispatch-macro-character #\# #\+ #'she-reader)
16 (set-dispatch-macro-character #\# #\- #'she-reader)
18 ;; Supress function/macro redefinition warnings under clisp.
19 #+clisp (setf custom:*suppress-check-redefinition* t)
21 (load-or-cload-xcompiler #'host-cload-stem)
23 ;;; Let's check that the type system, and various other things, are
24 ;;; reasonably sane. (It's easy to spend a long time wandering around
25 ;;; confused trying to debug cross-compilation if it isn't.)
26 (when (find :sb-test *shebang-features*)
27 (load "tests/type.before-xc.lisp")
28 (load "tests/info.before-xc.lisp")
29 (load "tests/vm.before-xc.lisp"))
30 (load "tools-for-build/ucd.lisp")
32 ;;; Generate character database tables.
33 (sb-cold::slurp-ucd)
34 (sb-cold::slurp-proplist)
35 (sb-cold::output)
37 ;;; propagate structure offset and other information to the C runtime
38 ;;; support code.
39 (host-cload-stem "src/compiler/generic/genesis" nil)
40 (sb!vm:genesis :c-header-dir-name "src/runtime/genesis")
41 #+cmu (ext:quit)
42 #+clisp (ext:quit)
43 #+abcl (ext:quit)