Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
cmucl
cmucl
Commits
18151398
Commit
18151398
authored
Mar 08, 1991
by
ram
Browse files
Checked in many changes from William's play area.
parent
2032e050
Changes
1
Hide whitespace changes
Inline
Side-by-side
tools/worldcom.lisp
View file @
18151398
;;; -*- Package: User; Log: code.log -*-
;;;
;;; **********************************************************************
;;; This code was written as part of the CMU Common Lisp project at
;;; Carnegie Mellon University, and has been placed in the public domain.
;;; If you want to use this code or any part of CMU Common Lisp, please contact
;;; Scott Fahlman or slisp-group@cs.cmu.edu.
;;;
(
ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/tools/worldcom.lisp,v 1.14 1991/02/08 13:36:47 ram Exp $"
)
;;;
;;; This code was written as part of the Spice Lisp project at
;;; Carnegie-Mellon University, and has been placed in the public domain.
;;; Spice Lisp is currently incomplete and under active development.
;;; If you want to use this code or any part of Spice Lisp, please contact
;;; Scott Fahlman (FAHLMAN@CMUC).
;;; **********************************************************************
(
in-package
"USER"
)
(
setf
*new-compile*
t
)
(
c::%proclaim
'
(
optimize
(
speed
2
)
(
space
2
)
(
c::brevity
2
))
)
(
with-compiler-log-file
(
"target:compile-lisp.log"
)
;;; these guys need to be first.
(
let
((
*features*
(
cons
(
intern
(
c:backend-name
c:*backend*
)
(
find-package
"KEYWORD"
))
(
remove-if
#'
(
lambda
(
x
)
(
member
x
'
(
:pmax
:sparc
)))
*features*
))))
(
comf
"target:code/globals"
:always-once
t
)
; For global variables.
(
comf
"target:code/struct"
:always-once
t
)
; For structures.
;;; these guys need to be first.
(
comf
"target:code/struct"
)
; For structures.
;;; Assembly files.
(
comf
"target:assembly/assem-rtns"
:assem
t
)
(
comf
"target:assembly/array"
:assem
t
)
(
comf
"target:assembly/bit-bash"
:assem
t
)
(
when
(
string=
(
c:backend-name
c:*backend*
)
"PMAX"
)
(
comf
"target:assembly/mips/assem-rtns"
:assem
t
)
(
comf
"target:assembly/mips/array"
:assem
t
)
(
comf
"target:assembly/mips/bit-bash"
:assem
t
)
(
comf
"target:assembly/mips/arith"
:assem
t
)
(
comf
"target:assembly/mips/alloc"
:assem
t
))
(
comf
"target:compiler/type"
)
(
comf
"target:compiler/mips/vm-type"
)
(
comf
"target:compiler/type-init"
)
(
when
(
string=
(
c:backend-name
c:*backend*
)
"SPARC"
)
(
comf
"target:assembly/sparc/assem-rtns"
:assem
t
)
(
comf
"target:assembly/sparc/array"
:assem
t
)
(
comf
"target:assembly/sparc/bit-bash"
:assem
t
)
(
comf
"target:assembly/sparc/arith"
:assem
t
)
(
comf
"target:assembly/sparc/alloc"
:assem
t
))
(
comf
"target:code/serve-event"
)
;;; these guys can supposedly come in any order, but not really.
;;; some are put at the end so macros don't run interpreted and stuff.
(
comf
"target:code/kernel"
)
(
comf
"target:code/lispinit"
)
(
comf
"target:code/fdefinition"
)
(
comf
"target:code/error"
)
(
comf
"target:code/salterror"
)
(
comf
"target:compiler/type"
)
(
comf
"target:compiler/generic/vm-type"
)
(
comf
"target:compiler/type-init"
)
(
comf
"target:code/pred"
)
(
comf
"target:code/alieneval"
)
(
comf
"target:code/stream"
)
(
comf
"target:code/arith"
)
(
comf
"target:code/array"
)
(
comf
"target:code/backq"
)
(
comf
"target:code/c-call"
)
(
comf
"target:code/char"
)
(
comf
"target:code/bit-bash"
)
(
comf
"target:code/array"
)
(
comf
"target:code/hash"
)
(
comf
"target:code/list"
)
;(comf "target:code/clx-ext")
(
comf
"target:code/commandline"
)
(
comf
"target:code/eval"
)
(
comf
"target:code/debug"
)
(
comf
"target:code/trace"
)
(
comf
"target:code/seq"
)
; seq must come after list
(
comf
"target:code/string"
)
(
comf
"target:code/mipsstrops"
)
(
comf
"target:code/machdef"
)
(
when
(
string=
(
c:backend-name
c:*backend*
)
"PMAX"
)
(
comf
"target:code/pmax-machdef"
)
(
comf
"target:code/pmax-vm"
)
(
comf
"target:code/pmax-disassem"
))
(
when
(
string=
(
c:backend-name
c:*backend*
)
"SPARC"
)
(
comf
"target:code/sparc-machdef"
)
(
comf
"target:code/sparc-vm"
))
(
comf
"target:code/symbol"
)
(
comf
"target:code/bignum"
)
(
comf
"target:code/numbers"
)
(
comf
"target:code/float-trap"
)
(
comf
"target:code/float"
)
(
comf
"target:code/irrat"
)
(
comf
"target:code/type-boot"
)
(
comf
"target:compiler/proclaim"
)
(
comf
"target:code/char"
)
(
comf
"target:code/misc"
)
(
comf
"target:code/extensions"
)
(
comf
"target:code/commandline"
)
(
comf
"target:code/gc"
)
(
comf
"target:code/purify"
)
(
comf
"target:code/save"
)
(
comf
"target:code/stream"
)
(
comf
"target:code/print"
)
(
comf
"target:code/pprint"
)
(
comf
"target:code/format"
)
(
comf
"target:code/package"
)
(
comf
"target:code/reader"
)
(
comf
"target:code/sharpm"
)
(
comf
"target:code/backq"
)
(
comf
"target:code/syscall"
)
(
comf
"target:code/vm"
)
(
comf
"target:code/serve-event"
)
(
pushnew
:serve-event
*features*
)
(
comf
"target:code/fd-stream"
)
(
comf
"target:code/fdefinition"
)
(
comf
"target:code/filesys"
)
(
comf
"target:code/format"
)
(
comf
"target:code/hash"
)
;(comf "target:code/lfloatcon")
(
comf
"target:code/search-list"
)
(
comf
"target:code/load"
)
;(comf "target:code/miscop")
(
comf
"target:code/package"
)
(
comf
"target:code/mipsstrops"
)
(
comf
"target:code/pred"
)
(
comf
"target:code/print"
)
(
comf
"target:code/provide"
)
(
comf
"target:code/eval"
)
(
comf
"target:code/signal"
)
(
comf
"target:code/interr"
)
(
comf
"target:code/debug-info"
)
(
comf
"target:code/debug-int"
)
(
comf
"target:code/debug"
)
(
comf
"target:code/query"
)
(
comf
"target:code/rand"
)
(
comf
"target:code/reader"
)
(
comf
"target:code/mipsnum"
)
(
comf
"target:code/salterror"
)
;(comf "target:code/save")
(
comf
"target:code/search-list"
)
(
comf
"target:code/seq"
)
(
comf
"target:code/sharpm"
)
(
comf
"target:code/trace"
)
(
comf
"target:code/sort"
)
(
comf
"target:code/type-boot"
)
(
comf
"target:code/run-program"
)
;(comf "target:code/spirrat")
;(comf "target:code/xp")
;(comf "target:code/xp-patch")
;(comf "target:code/pprint")
(
comf
"target:code/string"
)
(
comf
"target:code/symbol"
)
(
comf
"target:code/syscall"
)
(
comf
"target:code/sysmacs"
)
(
comf
"target:code/time"
)
;(comf "target:code/foreign")
(
comf
"target:compiler/proclaim"
)
(
comf
"target:compiler/knownfun"
)
(
comf
"target:code/debug-info"
)
(
comf
"target:code/weak"
)
;;; Later so that miscellaneous structures are defined (not crucial, but nice.)
(
comf
"target:code/describe"
)
;(comf "target:code/inspect")
(
comf
"target:code/tty-inspect"
)
;(comf "target:code/purify")
;(comf "target:code/gc")
(
comf
"target:code/misc"
)
(
comf
"target:code/format-time"
)
(
comf
"target:code/parse-time"
)
(
comf
"target:code/run-program"
)
(
comf
"target:code/loop"
)
;;; XP won't cross-compile.
#+
new-compiler
(
comf
"target:code/xp"
)
#+
clx
(
comf
"target:code/clx-ext"
)
#|
These need serious work.
(comf "target:code/lfloatcon")
|#
(
comf
"target:code/foreign"
)
(
comf
"target:code/internet"
)
(
comf
"target:code/wire"
)
(
comf
"target:code/remote"
)
;(comf "target:code/constants")
;;; Compile basic macros that we assume are already in the compilation
;;; environment. We inhibit compile-time definition to prevent these functions
;;; from becoming interpreted. In some cases, this is necessary for
...
...
@@ -116,9 +173,12 @@
(
let
((
c:*compile-time-define-macros*
nil
))
(
comf
"target:code/defstruct"
)
(
comf
"target:code/defmacro"
)
(
comf
"target:code/macros"
)
(
comf
"target:code/defrecord"
)
(
comf
"target:compiler/globaldb"
))
(
comf
"target:compiler/globaldb"
)
;; We can't compile anything after macros, 'cause it breaks the running lisp.
(
comf
"target:code/macros"
))
)
; let
)
; with-compiler-log-file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment