Use the new disassembler.
[movitz-core.git] / load.lisp
blobe010914710d23f1ce7242c8e48cb6c4bfd792a60
1 ;;;;------------------------------------------------------------------
2 ;;;;
3 ;;;; Copyright (C) 2003-2004,
4 ;;;; Department of Computer Science, University of Tromso, Norway.
5 ;;;;
6 ;;;; For distribution policy, see the accompanying file COPYING.
7 ;;;;
8 ;;;; Filename: load.lisp
9 ;;;; Description: Load the Movitz development system.
10 ;;;; Author: Frode Vatvedt Fjeld <frodef@acm.org>
11 ;;;; Created at: Thu Jan 15 18:40:58 2004
12 ;;;;
13 ;;;; $Id: load.lisp,v 1.12 2008/02/04 21:05:23 ffjeld Exp $
14 ;;;;
15 ;;;;------------------------------------------------------------------
17 (in-package :cl-user)
19 #+lispworks-personal-edition (progn
20 (dbg::clear-all-source-level-debugging)
21 (hcl:toggle-source-debugging nil)
22 (compiler::clear-xref-info t)
23 (setf compiler:*source-level-debugging* nil
24 compiler:*load-xref-info* nil
25 compiler:*produce-xref-info* nil)
26 (proclaim '(optimize (space 3) (speed 0)
27 (debug 0) (compilation-speed 3))))
29 (load (compile-file #p"../binary-types/binary-types"))
31 (load (compile-file #p"asm")) ; these are here for now, because
32 (load (compile-file #p"asm-x86")) ; ia-x86 needs them while testing/migrating.
35 (let ((*default-pathname-defaults* (merge-pathnames #p"../ia-x86/")))
36 #+(or cmu) (let ((pwd (ext:default-directory)))
37 (progn
38 (unwind-protect
39 (progn
40 (setf (ext:default-directory) #p"../ia-x86/")
41 (load "load"))
42 (setf (ext:default-directory) pwd))))
43 #-(or cmu) (load "load"))
45 #+allegro (progn
46 (load (compile-file #p"../infunix/procfs"))
47 (load "packages.lisp")
48 (load "movitz.lisp")
49 (excl:compile-system :movitz)
50 (excl:load-system :movitz)
51 (setf excl:*tenured-bytes-limit* #x2000000)
52 (setf (system::gsgc-parameter :generation-spread) 12)
53 (sys:resize-areas :new (* 64 1024 1024)))
55 #+clisp-older-than-2.33-or-so
56 (progn (load "packages")
57 (defconstant movitz::&all 'movitz::&all) ; CLisp has this wonderful bug..
58 (defconstant movitz::&code 'movitz::&code)
59 (defconstant movitz::&form 'movitz::&form)
60 (defconstant movitz::&returns 'movitz::&returns)
61 (defconstant movitz::&functional-p 'movitz::&functional-p)
62 (defconstant movitz::&modifies 'movitz::&modifies)
63 (defconstant movitz::&type 'movitz::&type)
64 (defconstant movitz::&final-form 'movitz::&final-form)
65 (defconstant movitz::&funobj 'movitz::&funobj)
66 (defconstant movitz::&top-level-p 'movitz::&top-level-p)
67 (defconstant movitz::&result-mode 'movitz::&result-mode)
68 (defconstant movitz::&env 'movitz::&env)
69 (defconstant movitz::&producer 'movitz::&producer))
72 #-allegro (do () (nil)
73 (with-simple-restart (retry "Retry loading Movitz")
74 (return
75 (with-compilation-unit ()
76 #+cmu (setf bt::*ignore-hidden-slots-for-pcl* t)
77 (mapcar (lambda (path)
78 (do () (nil)
79 #+lispworks-personal-edition (hcl:mark-and-sweep 3)
80 (with-simple-restart (retry "Retry loading ~S" path)
81 (return
82 (handler-bind
83 (#+sbcl (sb-ext:defconstant-uneql #'continue))
84 (load (or (compile-file path :print nil)
85 (error "Compile-file of ~S failed?" path))))))))
86 '("packages"
87 "movitz"
88 "parse"
89 "eval"
90 "environment"
91 "compiler-types"
92 "compiler-protocol"
93 "storage-types"
94 "multiboot"
95 "bootblock"
96 "image"
97 "stream-image"
98 ;; "procfs-image"
99 "assembly-syntax"
100 "compiler-protocol"
101 "compiler"
102 "special-operators"
103 "special-operators-cl"))))))
105 #+(and cmu18 (not cmu19))
106 (setf movitz:*compiler-compile-eval-whens* nil
107 movitz:*compiler-compile-macro-expanders* nil)
109 #+lispworks (load "muerte-packages") ; work around an apparent bug in defpackage.
110 #+lispworks-personal-edition
111 (progn
112 ;; (setf movitz:*compiler-compile-eval-whens* nil)
113 (setf movitz::*compiler-do-optimize-p* nil
114 movitz::*compiler-do-type-inference* nil)
115 (mark-and-sweep 3))