1.0.20.20: fix gencgc on 32 bit platforms with 2gb< heap
[sbcl/pkhuong.git] / package-data-list.lisp-expr
blob2cb78b8111a655a3b335bffd86847ef3bc3537cf
1 ;;;; -*- Lisp -*-
3 ;;;; the specifications of target packages, except for a few things
4 ;;;; which are handled elsewhere by other mechanisms:
5 ;;;;   * any SHADOWing and nickname hackery;
6 ;;;;   * the standard, non-SBCL-specific packages COMMON-LISP,
7 ;;;;     COMMON-LISP-USER, and KEYWORD.
8 ;;;;
9 ;;;; The packages are named SB!FOO here and elsewhere in
10 ;;;; cross-compilation, in order to avoid collision with possible
11 ;;;; corresponding SB-FOO packages in the cross-compilation host.
12 ;;;; They're renamed to SB-FOO later, after we've departed from the xc
13 ;;;; mothership and the danger of namespace collision is past.
15 ;;;; This software is part of the SBCL system. See the README file for
16 ;;;; more information.
17 ;;;;
18 ;;;; This software is derived from the CMU CL system, which was
19 ;;;; written at Carnegie Mellon University and released into the
20 ;;;; public domain. The software is in the public domain and is
21 ;;;; provided with absolutely no warranty. See the COPYING and CREDITS
22 ;;;; files for more information.
24 ;;;; KLUDGE: To make it easier for emacs to autoindent this file nicely
25 ;;;; (which prevents spurious conflicts in CVS) each longish list should
26 ;;;; have only one string on the first line. Silly, but there you go.
28 (#s(sb-cold:package-data
29     :name "SB!ALIEN"
30     :doc "public: the ALIEN foreign function interface (If you're
31 porting CMU CL code, note that this package corresponds roughly to a union
32 of the packages ALIEN and C-CALL at the time of the SBCL fork. SB-C-CALL
33 is a deprecated nickname to help ease the transition from older versions
34 of SBCL which maintained the CMU-CL-style split into two packages.)"
35     :use ("CL" "SB!EXT" "SB!INT" "SB!SYS" "SB!ALIEN-INTERNALS")
36     :reexport ("ARRAY"
37                "BOOLEAN" "CHAR" "DOUBLE-FLOAT"
38                "FLOAT" "FUNCTION" "INTEGER" "LONG-FLOAT"
39                "SINGLE-FLOAT"
40                ;; FIXME: Do we really want to reexport
41                ;; SYSTEM-AREA-POINTER here? Why?
42                "SYSTEM-AREA-POINTER"
43                "UNION"  "VALUES" "*")
44     :export ("ADDR"
45              "ALIEN"
46              "ALIEN-FUNCALL" "ALIEN-SAP" "ALIEN-SIZE"
47              "CAST" "C-STRING"
48              "DEFINE-ALIEN-ROUTINE" "DEFINE-ALIEN-TYPE" "DEFINE-ALIEN-VARIABLE"
49              "DEREF" "DOUBLE"
50              "ENUM" "EXTERN-ALIEN"
51              "FREE-ALIEN"
52              "GET-ERRNO"
53              "INT"
54              "LOAD-1-FOREIGN" "LOAD-FOREIGN" "LOAD-SHARED-OBJECT" "LONG" "LONG-LONG"
55              "MAKE-ALIEN"
56              "NULL-ALIEN"
57              "SAP-ALIEN" "SHORT" "SIGNED" "SLOT" "STRUCT"
58              "UNDEFINED-ALIEN-ERROR"
59              "UNSIGNED"
60              "UNSIGNED-CHAR" "UNSIGNED-INT" "UNSIGNED-LONG" "UNSIGNED-LONG-LONG" "UNSIGNED-SHORT"
61              "UTF8-STRING"
62              "VOID"
63              "WITH-ALIEN"))
65    #s(sb-cold:package-data
66       :name "SB!ALIEN-INTERNALS"
67       :doc "private: stuff for implementing ALIENs and friends"
68       :use ("CL")
69       :export ("%CAST"
70                "%DEREF-ADDR" "%HEAP-ALIEN" "%HEAP-ALIEN-ADDR"
71                "%LOCAL-ALIEN-ADDR" "%LOCAL-ALIEN-FORCED-TO-MEMORY-P" "%SAP-ALIEN"
72                "%SET-DEREF" "%SET-HEAP-ALIEN" "%SET-LOCAL-ALIEN" "%SET-SLOT"
73                "%SLOT-ADDR" "*VALUES-TYPE-OKAY*" "ALIEN-ARRAY-TYPE"
74                "ALIEN-ARRAY-TYPE-DIMENSIONS" "ALIEN-ARRAY-TYPE-ELEMENT-TYPE"
75                "ALIEN-ARRAY-TYPE-P" "ALIEN-BOOLEAN-TYPE" "ALIEN-BOOLEAN-TYPE-P"
76                "ALIEN-CALLBACK"
77                "ALIEN-CALLBACK-ACCESSOR-FORM"
78                "ALIEN-CALLBACK-ASSEMBLER-WRAPPER"
79                "ALIEN-DOUBLE-FLOAT-TYPE" "ALIEN-DOUBLE-FLOAT-TYPE-P"
80                "ALIEN-ENUM-TYPE" "ALIEN-ENUM-TYPE-P" "ALIEN-FLOAT-TYPE"
81                "ALIEN-FLOAT-TYPE-P" "ALIEN-FUN-TYPE"
82                "ALIEN-FUN-TYPE-ARG-TYPES" "ALIEN-FUN-TYPE-P"
83                "ALIEN-FUN-TYPE-RESULT-TYPE" "ALIEN-INTEGER-TYPE"
84                "ALIEN-INTEGER-TYPE-P" "ALIEN-INTEGER-TYPE-SIGNED"
85                "ALIEN-LONG-FLOAT-TYPE" "ALIEN-LONG-FLOAT-TYPE-P"
86                "ALIEN-POINTER-TYPE" "ALIEN-POINTER-TYPE-P"
87                "ALIEN-POINTER-TYPE-TO" "ALIEN-RECORD-FIELD"
88                "ALIEN-RECORD-FIELD-NAME" "ALIEN-RECORD-FIELD-OFFSET"
89                "ALIEN-RECORD-FIELD-P" "ALIEN-RECORD-FIELD-TYPE"
90                "ALIEN-RECORD-TYPE" "ALIEN-RECORD-TYPE-FIELDS"
91                "ALIEN-RECORD-TYPE-P" "ALIEN-SINGLE-FLOAT-TYPE"
92                "ALIEN-SINGLE-FLOAT-TYPE-P" "ALIEN-SUBTYPE-P" "ALIEN-TYPE"
93                "ALIEN-TYPE-=" "ALIEN-TYPE-ALIGNMENT" "ALIEN-TYPE-BITS"
94                "ALIEN-TYPE-P" "ALIEN-TYPEP"
95                "ALIEN-VALUE" "ALIEN-VALUE-TYPE"
96                "ALIEN-VALUE-SAP" "ALIEN-VALUE-P"
97                "ALIEN-VALUES-TYPE" "ALIEN-VALUES-TYPE-P"
98                "ALIEN-VALUES-TYPE-VALUES" "ALIGN-OFFSET" "ALIEN-VOID-TYPE-P"
99                "COMPUTE-ALIEN-REP-TYPE" "COMPUTE-DEPORT-ALLOC-LAMBDA"
100                "COMPUTE-DEPORT-LAMBDA" "COMPUTE-DEPOSIT-LAMBDA"
101                "COMPUTE-EXTRACT-LAMBDA" "COMPUTE-LISP-REP-TYPE"
102                "COMPUTE-NATURALIZE-LAMBDA" "DEFINE-ALIEN-TYPE-CLASS"
103                "DEFINE-ALIEN-TYPE-METHOD" "DEFINE-ALIEN-TYPE-TRANSLATOR"
104                "DEPORT" "DEPORT-ALLOC"
105                "DEPOSIT-ALIEN-VALUE" "DISPOSE-LOCAL-ALIEN"
106                "*ENTER-ALIEN-CALLBACK*" "ENTER-ALIEN-CALLBACK"
107                "EXTRACT-ALIEN-VALUE"
108                "HEAP-ALIEN-INFO" "HEAP-ALIEN-INFO-P" "HEAP-ALIEN-INFO-SAP-FORM"
109                "HEAP-ALIEN-INFO-TYPE" "INVOKE-ALIEN-TYPE-METHOD" "LOCAL-ALIEN"
110                "LOCAL-ALIEN-INFO" "LOCAL-ALIEN-INFO-FORCE-TO-MEMORY-P"
111                "LOCAL-ALIEN-INFO-P" "LOCAL-ALIEN-INFO-TYPE"
112                "MAKE-ALIEN-FUN-TYPE" "MAKE-ALIEN-POINTER-TYPE"
113                "MAKE-ALIEN-VALUE" "MAYBE-WITH-PINNED-OBJECTS"
114                "MAKE-LOCAL-ALIEN" "NATURALIZE"
115                "NOTE-LOCAL-ALIEN-TYPE"
116                "PARSE-ALIEN-TYPE" "UNPARSE-ALIEN-TYPE"))
118    #s(sb-cold:package-data
119       :name "SB!ASSEM"
120       :doc "private: the assembler, used by the compiler"
121       :use ("CL" "SB!EXT" "SB!INT")
122       :export ("ASSEMBLY-UNIT"
124                "*ASSEM-SCHEDULER-P*"
125                "*ASSEM-INSTRUCTIONS*"
126                "*ASSEM-MAX-LOCATIONS*"
128                "EMIT-ALIGNMENT" "EMIT-BYTE" "EMIT-SKIP" "EMIT-BACK-PATCH"
129                "EMIT-CHOOSER" "DEFINE-BITFIELD-EMITTER"
130                "DEFINE-INSTRUCTION" "DEFINE-INSTRUCTION-MACRO"
131                "DEF-ASSEMBLER-PARAMS" "EMIT-POSTIT"
133                "MAKE-SEGMENT" "SEGMENT-TYPE" "ASSEMBLE"
134                "INST" "LABEL" "LABEL-P" "GEN-LABEL"
135                "EMIT-LABEL" "LABEL-POSITION" "APPEND-SEGMENT" "FINALIZE-SEGMENT"
136                "ON-SEGMENT-CONTENTS-VECTORLY" "WRITE-SEGMENT-CONTENTS"
137                "READS" "WRITES" "SEGMENT"
138                "WITHOUT-SCHEDULING"
139                "VARIABLE-LENGTH"
140                "SEGMENT-COLLECT-DYNAMIC-STATISTICS"
142                ;; FIXME: These are in the SB-ASSEM package now, but
143                ;; (left over from CMU CL) are defined in files which
144                ;; are IN-PACKAGE SB-C. It would probably be cleaner
145                ;; to move at least most of them to files which are
146                ;; IN-PACKAGE SB-ASSEM.
147                "BRANCH" "DO-SSET-ELEMENTS" "FLUSHABLE" "MAKE-SSET" "SSET"
148                "SSET-ADJOIN" "SSET-DELETE" "SSET-ELEMENT" "SSET-EMPTY"))
150    #s(sb-cold:package-data
151       :name "SB!BIGNUM"
152       :doc "private: bignum implementation"
153       :use ("CL" "SB!KERNEL" "SB!INT" "SB!EXT")
154       :export ("%ADD-WITH-CARRY"
155                "%ALLOCATE-BIGNUM" "%ASHL" "%ASHR"
156                "%BIGNUM-LENGTH" "%BIGNUM-REF" "%BIGNUM-REF-WITH-OFFSET"
157                "%BIGNUM-SET" "%BIGNUM-SET-WITH-OFFSET"
158                "%BIGNUM-SET-LENGTH" "%DIGIT-0-OR-PLUSP"
159                "%DIGIT-LOGICAL-SHIFT-RIGHT"
160                "%FIXNUM-DIGIT-WITH-CORRECT-SIGN" "%FIXNUM-TO-DIGIT"
161                "%FLOOR" "%LOGAND" "%LOGIOR" "%LOGNOT" "%LOGXOR"
162                "%MULTIPLY" "%MULTIPLY-AND-ADD"
163                "%SUBTRACT-WITH-BORROW" "ADD-BIGNUMS"
164                "BIGNUM-ASHIFT-LEFT" "BIGNUM-ASHIFT-RIGHT"
165                "BIGNUM-COMPARE" "BIGNUM-DEPOSIT-BYTE"
166                "BIGNUM-ELEMENT-TYPE" "BIGNUM-GCD" "BIGNUM-INDEX"
167                "BIGNUM-INTEGER-LENGTH" "BIGNUM-LOAD-BYTE"
168                "BIGNUM-LOGBITP"
169                "BIGNUM-LOGCOUNT" "BIGNUM-LOGICAL-AND"
170                "BIGNUM-LOGICAL-IOR" "BIGNUM-LOGICAL-NOT"
171                "BIGNUM-LOGICAL-XOR" "BIGNUM-PLUS-P"
172                "BIGNUM-TO-FLOAT" "BIGNUM-TRUNCATE" "BIGNUM-TYPE"
173                "FLOAT-BIGNUM-RATIO" "MAKE-SMALL-BIGNUM"
174                "MULTIPLY-BIGNUM-AND-FIXNUM" "MULTIPLY-BIGNUMS"
175                "MULTIPLY-FIXNUMS" "NEGATE-BIGNUM"
176                "SUBTRACT-BIGNUM" "SXHASH-BIGNUM"))
178    #s(sb-cold:package-data
179       :name "SB!C"
180       :doc "private: implementation of the compiler"
181       ;; (It seems strange to have the compiler USE SB-ALIEN-INTERNALS,
182       ;; but the point seems to be to be able to express things like
183       ;; SB!C:DEFTRANSFORM SB-ALIEN-INTERNALS:MAKE-LOCAL-ALIEN without
184       ;; having to use a bunch of package prefixes, by putting them
185       ;; in the SB-C package. Maybe it'd be tidier to define an SB-ALIEN-COMP
186       ;; package for this? But it seems like a fairly low priority.)
187       ;; (Probably the same considerations also explain why BIGNUM is
188       ;;in the USE list.)
189       :use ("CL" "SB!ALIEN-INTERNALS" "SB!ALIEN" "SB!ASSEM" "SB!BIGNUM"
190                  #!+sb-dyncount "SB-DYNCOUNT" "SB!EXT" "SB!FASL" "SB!INT"
191                  "SB!KERNEL" "SB!SYS")
192       :reexport ("SLOT" "CODE-INSTRUCTIONS" "FLUSHABLE")
193       :export ("%ALIEN-FUNCALL"
194                "%CATCH-BREAKUP" "%CONTINUE-UNWIND"
195                "%LISTIFY-REST-ARGS" "%MORE-ARG" "%MORE-ARG-VALUES"
196                "%UNWIND-PROTECT-BREAKUP"
198                "*BACKEND-BYTE-ORDER*" "*BACKEND-DISASSEM-PARAMS*"
199                "*BACKEND-INSTRUCTION-FLAVORS*" "*BACKEND-INSTRUCTION-FORMATS*"
200                "*BACKEND-INTERNAL-ERRORS*" "*BACKEND-PAGE-SIZE*"
201                "*BACKEND-REGISTER-SAVE-PENALTY*"
202                "*BACKEND-SB-LIST*" "*BACKEND-SB-NAMES*"
203                "*BACKEND-SC-NAMES*" "*BACKEND-SC-NUMBERS*"
204                "*BACKEND-SPECIAL-ARG-TYPES*"
205                "*BACKEND-SUBFEATURES*"
206                "*BACKEND-T-PRIMITIVE-TYPE*"
208                "*CODE-SEGMENT*"
209                "*COUNT-VOP-USAGES*" "*ELSEWHERE*" "*FREE-FUNS*"
210                "*LEXENV*"
211                "*SETF-ASSUMED-FBOUNDP*"
212                "*SUPPRESS-VALUES-DECLARATION*"
214                #!+x86 "SET-FPU-WORD-FOR-C"
215                #!+x86 "SET-FPU-WORD-FOR-LISP"
216                "ALIGN-STACK-POINTER"
217                "ALLOC-ALIEN-STACK-SPACE" "ALLOC-NUMBER-STACK-SPACE"
218                "ALLOCATE-CODE-OBJECT" "ALLOCATE-FRAME"
219                "ALLOCATE-DYNAMIC-CODE-OBJECT" "ALLOCATE-FULL-CALL-FRAME"
220                "ALWAYS-TRANSLATABLE"
221                "ANY" "ARG-COUNT-ERROR" "ASSEMBLE-FILE"
222                "ATTRIBUTES" "ATTRIBUTES-INTERSECTION" "ATTRIBUTES-UNION"
223                "ATTRIBUTES=" "BIND"
224                "CALL" "CALL-LOCAL" "CALL-NAMED" "CALL-OUT" "CALL-VARIABLE"
225                "CALLEE-NFP-TN" "CALLEE-RETURN-PC-TN"
226                "CASE-BODY" "CATCH-BLOCK" "CHECK-CONS"
227                "CHECK-FIXNUM" "CHECK-FUN"
228                ;; FIXME: 32/64-bit issues
229                "CHECK-SIGNED-BYTE-32" "CHECK-SIGNED-BYTE-64"
230                "CHECK-SYMBOL"
231                ;; FIXME: 32/64-bit issues
232                "CHECK-UNSIGNED-BYTE-32" "CHECK-UNSIGNED-BYTE-64"
233                "CLOSURE-INIT" "CLOSURE-REF"
234                "CODE-CONSTANT-REF" "CODE-CONSTANT-SET"
235                "*CODE-COVERAGE-INFO*"
236                "COMPARE-AND-SWAP-SLOT"
237                "COMPILE-IN-LEXENV"
238                "COMPILE-LAMBDA-FOR-DEFUN"
239                "%COMPILER-DEFUN" "COMPILER-ERROR" "FATAL-COMPILER-ERROR"
240                "COMPILER-NOTIFY"
241                "COMPILER-STYLE-WARN" "COMPILER-WARN"
242                "COMPONENT" "COMPONENT-HEADER-LENGTH"
243                "COMPONENT-INFO" "COMPONENT-LIVE-TN" "COMPUTE-FUN"
244                "COMPUTE-OLD-NFP" "COPY-MORE-ARG"
245                "CURRENT-BINDING-POINTER" "CURRENT-NFP-TN"
246                "CURRENT-STACK-POINTER"
247                "DEALLOC-ALIEN-STACK-SPACE"
248                "DEALLOC-NUMBER-STACK-SPACE"
249                "DEBUG-CATCH-TAG"
250                "DEF-IR1-TRANSLATOR"
251                "!DEF-PRIMITIVE-TYPE" "!DEF-PRIMITIVE-TYPE-ALIAS"
252                "DEFINE-SOURCE-TRANSFORM" "!DEF-VM-SUPPORT-ROUTINE"
253                "DEFINE-ASSEMBLY-ROUTINE"
254                "DEFINITION-SOURCE-LOCATION"
255                "DEFINITION-SOURCE-LOCATION-NAMESTRING"
256                "DEFINITION-SOURCE-LOCATION-TOPLEVEL-FORM-NUMBER"
257                "DEFINITION-SOURCE-LOCATION-PLIST"
258                "DEFINE-MODULAR-FUN"
259                "DEFINE-MOVE-FUN"
260                "DEFINE-MOVE-VOP" "DEFINE-STORAGE-BASE"
261                "DEFINE-STORAGE-CLASS" "DEFINE-VOP"
262                "DEFKNOWN" "DEFOPTIMIZER"
263                "DEFTRANSFORM" "DERIVE-TYPE"
264                "ENTRY-NODE-INFO-NLX-TAG" "ENTRY-NODE-INFO-ST-TOP"
265                "PHYSENV-DEBUG-LIVE-TN" "PHYSENV-LIVE-TN"
266                "FAST-SYMBOL-VALUE"
267                "FIXUP-NOTE-KIND"
268                "FIXUP-NOTE-FIXUP"
269                "FIXUP-NOTE-POSITION"
270                "FOLDABLE"
271                "FORCE-TN-TO-STACK"
272                "FUN-INFO-DERIVE-TYPE" "FUN-INFO-IR2-CONVERT"
273                "FUN-INFO-LTN-ANNOTATE" "FUN-INFO-OPTIMIZER"
274                "GET-VECTOR-SUBTYPE"
275                "GET-TOPLEVELISH-FILE-INFO"
276                "HALT"
277                "IF-EQ" "INLINE-SYNTACTIC-CLOSURE-LAMBDA"
278                "INSERT-STEP-CONDITIONS"
279                "IR2-COMPONENT-CONSTANTS" "IR2-CONVERT"
280                "IR2-PHYSENV-NUMBER-STACK-P"
281                "KNOWN-CALL-LOCAL" "KNOWN-RETURN"
282                "LAMBDA-WITH-LEXENV" "LEXENV-FIND"
283                "LOCATION=" "LTN-ANNOTATE"
284                "MAKE-ALIAS-TN" "MAKE-CATCH-BLOCK"
285                "MAKE-CLOSURE" "MAKE-CONSTANT-TN"
286                "MAKE-FIXUP-NOTE"
287                "MAKE-LOAD-TIME-CONSTANT-TN" "MAKE-N-TNS" "MAKE-NORMAL-TN"
288                "MAKE-OTHER-IMMEDIATE-TYPE" "MAKE-RANDOM-TN"
289                "MAKE-REPRESENTATION-TN" "MAKE-RESTRICTED-TN" "MAKE-SC-OFFSET"
290                "MAKE-STACK-POINTER-TN" "MAKE-TN-REF" "MAKE-UNWIND-BLOCK"
291                "MAKE-WIRED-TN" "MAYBE-COMPILER-NOTIFY"
292                "MAYBE-INLINE-SYNTACTIC-CLOSURE"
293                "META-PRIMITIVE-TYPE-OR-LOSE"
294                "META-SB-OR-LOSE" "META-SC-NUMBER-OR-LOSE" "META-SC-OR-LOSE"
295                "MORE-ARG-CONTEXT" "MOVABLE" "MOVE" "MULTIPLE-CALL"
296                "MULTIPLE-CALL-LOCAL" "MULTIPLE-CALL-NAMED"
297                "MULTIPLE-CALL-VARIABLE"
298                "%%NIP-DX" "%%NIP-VALUES"
299                "NLX-ENTRY" "NLX-ENTRY-MULTIPLE"
300                "NODE-STACK-ALLOCATE-P"
301                "NON-DESCRIPTOR-STACK" "NOTE-ENVIRONMENT-START"
302                "NOTE-THIS-LOCATION" "OPTIMIZER" "PACK-TRACE-TABLE"
303                "PARSE-EVAL-WHEN-SITUATIONS"
304                "POLICY"
305                "%%POP-DX"
306                "PREDICATE" "PRIMITIVE-TYPE" "PRIMITIVE-TYPE-OF"
307                "PRIMITIVE-TYPE-OR-LOSE" "PRIMITIVE-TYPE-VOP"
308                "PRIMITIVE-TYPE-NAME" "PUSH-VALUES"
309                "READ-PACKED-BIT-VECTOR" "READ-VAR-INTEGER" "READ-VAR-STRING"
310                "RESET-STACK-POINTER" "RESTORE-DYNAMIC-STATE"
311                "RETURN-MULTIPLE" "SAVE-DYNAMIC-STATE" "SB"
312                "SB-ALLOCATED-SIZE" "SB-NAME" "SB-OR-LOSE" "SB-P" "SC" "SC-CASE"
313                "SC-IS" "SC-NAME" "SC-NUMBER" "SC-NUMBER-OR-LOSE" "SC-OFFSET"
314                "SC-OFFSET-OFFSET" "SC-OFFSET-SCN" "SC-OR-LOSE" "SC-P" "SC-SB"
315                "SET-UNWIND-PROTECT" "SET-VECTOR-SUBTYPE"
316                "SETUP-CLOSURE-ENVIRONMENT" "SETUP-ENVIRONMENT"
317                "SOURCE-LOCATION"
318                "SOURCE-TRANSFORM-LAMBDA"
319                "SPECIFY-SAVE-TN"
320                "STORE-COVERAGE-DATA"
321                "TAIL-CALL" "TAIL-CALL-NAMED"
322                "TAIL-CALL-VARIABLE" "TEMPLATE-OR-LOSE"
323                "TN" "TN-OFFSET" "TN-P" "TN-REF" "TN-REF-ACROSS" "TN-REF-LOAD-TN"
324                "TN-REF-NEXT" "TN-REF-NEXT-REF" "TN-REF-P" "TN-REF-TARGET"
325                "TN-REF-TN" "TN-REF-VOP" "TN-REF-WRITE-P" "TN-SC" "TN-VALUE"
326                "TRACE-TABLE-ENTRY" "TYPE-CHECK-ERROR" "UNBIND" "UNBIND-TO-HERE"
327                "UNSAFE" "UNWIND" "UWP-ENTRY"
328                "VERIFY-ARG-COUNT" "WRITE-PACKED-BIT-VECTOR"
329                "WRITE-VAR-INTEGER" "WRITE-VAR-STRING" "XEP-ALLOCATE-FRAME"
330                "LABEL-ID" "FIXUP" "FIXUP-FLAVOR" "FIXUP-NAME" "FIXUP-OFFSET"
331                "FIXUP-P" "MAKE-FIXUP"
332                "DEF-ALLOC"
333                "VAR-ALLOC"
334                "SAFE-FDEFN-FUN"
335                "NOTE-FIXUP"
336                "DEF-CASSER"
337                "DEF-REFFER"
338                "EMIT-CONSTANT"
339                "EMIT-NOP"
340                "DEF-SETTER"
341                "FIXED-ALLOC"
342                "MAKE-UNBOUND-MARKER"
343                "MAKE-FUNCALLABLE-INSTANCE-TRAMP"
344                "RETURN-SINGLE"
345                "NOTE-NEXT-INSTRUCTION"
346                "SET-SLOT"
347                "LOCATION-NUMBER"
348                "*COMPONENT-BEING-COMPILED*"
349                "BLOCK-NUMBER"
350                "BACKEND"
351                "IR2-BLOCK-BLOCK"
352                "VOP-BLOCK"
353                "*ASSEMBLY-OPTIMIZE*"
354                "LARGE-ALLOC"
355                "%SET-SIMPLE-FUN-SELF"
356                "VM-SUPPORT-ROUTINES-IMMEDIATE-CONSTANT-SC"
357                "VM-SUPPORT-ROUTINES-LOCATION-PRINT-NAME"
358                "VM-SUPPORT-ROUTINES-PRIMITIVE-TYPE-OF"
359                "VM-SUPPORT-ROUTINES-PRIMITIVE-TYPE"
360                "VM-SUPPORT-ROUTINES-MAKE-CALL-OUT-TNS"
361                "VM-SUPPORT-ROUTINES-STANDARD-ARG-LOCATION"
362                "VM-SUPPORT-ROUTINES-MAKE-RETURN-PC-PASSING-LOCATION"
363                "VM-SUPPORT-ROUTINES-MAKE-OLD-FP-PASSING-LOCATION"
364                "VM-SUPPORT-ROUTINES-MAKE-OLD-FP-SAVE-LOCATION"
365                "VM-SUPPORT-ROUTINES-MAKE-RETURN-PC-SAVE-LOCATION"
366                "VM-SUPPORT-ROUTINES-MAKE-ARG-COUNT-LOCATION"
367                "VM-SUPPORT-ROUTINES-MAKE-NFP-TN"
368                "VM-SUPPORT-ROUTINES-MAKE-STACK-POINTER-TN"
369                "VM-SUPPORT-ROUTINES-MAKE-NUMBER-STACK-POINTER-TN"
370                "VM-SUPPORT-ROUTINES-MAKE-UNKNOWN-VALUES-LOCATIONS"
371                "VM-SUPPORT-ROUTINES-SELECT-COMPONENT-FORMAT"
372                "VM-SUPPORT-ROUTINES-MAKE-NLX-SP-TN"
373                "VM-SUPPORT-ROUTINES-MAKE-DYNAMIC-STATE-TNS"
374                "VM-SUPPORT-ROUTINES-MAKE-NLX-ENTRY-ARG-START-LOCATION"
375                "VM-SUPPORT-ROUTINES-GENERATE-CALL-SEQUENCE"
376                "VM-SUPPORT-ROUTINES-GENERATE-RETURN-SEQUENCE"
377                "VM-SUPPORT-ROUTINES-EMIT-NOP"
378                "VM-SUPPORT-ROUTINES-LOCATION-NUMBER"
380                "WITH-SOURCE-LOCATION"
381                "*SOURCE-LOCATION-THUNKS*"))
383    #s(sb-cold:package-data
384       :name "SB!DEBUG"
385       :doc
386       "sorta public: Eventually this should become the debugger interface, with
387 basic stuff like BACKTRACE and ARG. For now, the actual supported interface
388 is still mixed indiscriminately with low-level internal implementation stuff
389 like *STACK-TOP-HINT* and unsupported stuff like *TRACED-FUN-LIST*."
390       :use ("CL" "SB!EXT" "SB!INT" "SB!SYS" "SB!KERNEL")
391       :reexport ("*DEBUG-PRINT-VARIABLE-ALIST*")
392       :export ("*DEBUG-BEGINNER-HELP-P*"
393                "*DEBUG-CONDITION*"
394                "*DEBUG-READTABLE*" "*DEBUG-HELP-STRING*"
395                "*FLUSH-DEBUG-ERRORS*" "*IN-THE-DEBUGGER*"
396                "*SHOW-ENTRY-POINT-DETAILS*"
397                "*TRACE-INDENTATION-STEP*" "*MAX-TRACE-INDENTATION*"
398                "*TRACE-FRAME*" "*TRACED-FUN-LIST*"
399                "ARG" "BACKTRACE" "BACKTRACE-AS-LIST" "INTERNAL-DEBUG" "VAR"
400                "*PRINT-LOCATION-KIND*"
401                "*ONLY-BLOCK-START-LOCATIONS*" "*STACK-TOP-HINT*"
402                "*TRACE-VALUES*" "DO-DEBUG-COMMAND"
403                "*TRACE-ENCAPSULATE-DEFAULT*"
404                "FRAME-HAS-DEBUG-TAG-P"
405                "UNWIND-TO-FRAME-AND-CALL"))
407    #s(sb-cold:package-data
408       :name "SB!DI"
409       :doc "private: primitives used to write debuggers"
410       :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL" "SB!SYS" "SB!VM")
411       :import-from (("SB!C"
412                      "DEBUG-SOURCE-FORM" "DEBUG-SOURCE-NAMESTRING"
413                      "DEBUG-SOURCE-CREATED" "DEBUG-SOURCE-COMPILED"
414                      "DEBUG-SOURCE-START-POSITIONS" "MAKE-DEBUG-SOURCE"
415                      "DEBUG-SOURCE" "DEBUG-SOURCE-P"))
416       :reexport ("DEBUG-SOURCE-FORM"
417                  "DEBUG-SOURCE-NAMESTRING"
418                  "DEBUG-SOURCE-CREATED" "DEBUG-SOURCE-COMPILED"
419                  "DEBUG-SOURCE-START-POSITIONS" "DEBUG-SOURCE"
420                  "DEBUG-SOURCE-P")
421       :export ("ACTIVATE-BREAKPOINT"
422                "AMBIGUOUS-DEBUG-VARS" "AMBIGUOUS-VAR-NAME" "BREAKPOINT"
423                "BREAKPOINT-ACTIVE-P" "BREAKPOINT-HOOK-FUN" "BREAKPOINT-INFO"
424                "BREAKPOINT-KIND" "BREAKPOINT-P" "BREAKPOINT-WHAT" "CODE-LOCATION"
425                "CODE-LOCATION-DEBUG-BLOCK" "CODE-LOCATION-DEBUG-FUN"
426                "CODE-LOCATION-DEBUG-SOURCE" "CODE-LOCATION-FORM-NUMBER"
427                "CODE-LOCATION-P" "CODE-LOCATION-TOPLEVEL-FORM-OFFSET"
428                "CODE-LOCATION-UNKNOWN-P" "CODE-LOCATION=" "DEACTIVATE-BREAKPOINT"
429                "DEBUG-BLOCK" "DEBUG-BLOCK-ELSEWHERE-P" "DEBUG-BLOCK-P"
430                "DEBUG-BLOCK-SUCCESSORS" "DEBUG-CONDITION" "DEBUG-ERROR"
431                "DEBUG-FUN" "DEBUG-FUN-FUN" "DEBUG-FUN-KIND"
432                "DEBUG-FUN-LAMBDA-LIST" "DEBUG-FUN-NAME"
433                "DEBUG-FUN-P" "DEBUG-FUN-START-LOCATION"
434                "DEBUG-FUN-SYMBOL-VARS"
435                "DEBUG-SOURCE-ROOT-NUMBER" "DEBUG-VAR"
436                "DEBUG-VAR-ID" "DEBUG-VAR-INFO-AVAILABLE"
437                "DEBUG-VAR-SYMBOL-NAME" "DEBUG-VAR-P" "DEBUG-VAR-PACKAGE-NAME"
438                "DEBUG-VAR-SYMBOL" "DEBUG-VAR-VALID-VALUE"
439                "DEBUG-VAR-VALIDITY" "DEBUG-VAR-VALUE"
440                "DELETE-BREAKPOINT"
441                "DO-DEBUG-BLOCK-LOCATIONS" "DO-DEBUG-FUN-BLOCKS"
442                "DO-DEBUG-FUN-VARS"
443                "FORM-NUMBER-TRANSLATIONS"
444                "FRAME" "FRAME-CATCHES" "FRAME-CODE-LOCATION"
445                "FRAME-DEBUG-FUN" "FRAME-DOWN"
446                "FRAME-FUN-MISMATCH" "FRAME-NUMBER" "FRAME-P" "FRAME-UP"
447                "REPLACE-FRAME-CATCH-TAG"
448                "FUN-DEBUG-FUN" "FUN-END-COOKIE-VALID-P"
449                "INVALID-CONTROL-STACK-POINTER" "INVALID-VALUE"
450                "LAMBDA-LIST-UNAVAILABLE" "MAKE-BREAKPOINT" "NO-DEBUG-BLOCKS"
451                "NO-DEBUG-FUN-RETURNS" "NO-DEBUG-INFO" "PREPROCESS-FOR-EVAL"
452                "RETURN-FROM-FRAME" "SOURCE-PATH-CONTEXT"
453                "TOP-FRAME" "UNHANDLED-DEBUG-CONDITION" "UNKNOWN-CODE-LOCATION"
454                "UNKNOWN-CODE-LOCATION-P" "UNKNOWN-DEBUG-VAR"
455                "CODE-LOCATION-KIND" "FLUSH-FRAMES-ABOVE"))
457    #s(sb-cold:package-data
458       :name "SB!DISASSEM"
459       :doc "private: stuff related to the implementation of the disassembler"
460       :use ("CL" "SB!EXT" "SB!INT")
461       :export ("*DISASSEM-INST-ALIGNMENT-BYTES*"
462                "*DISASSEM-NOTE-COLUMN*" "*DISASSEM-OPCODE-COLUMN-WIDTH*"
463                "*DISASSEM-SCHEDULER-P*" "*DISASSEM-LOCATION-COLUMN-WIDTH*"
464                "ADD-COMMENT-HOOK" "ADD-HOOK" "ADD-NOTE-HOOK"
465                "ARG-VALUE" "CREATE-DSTATE" "DISASSEM-STATE"
466                "DISASSEMBLE-CODE-COMPONENT"
467                "DISASSEMBLE-FUN" "DISASSEMBLE-MEMORY"
468                "DISASSEMBLE-SEGMENT" "DISASSEMBLE-SEGMENTS"
469                "DSTATE-CODE" "DSTATE-CURPOS" "DSTATE-GET-INST-PROP"
470                "DSTATE-GET-PROP" "DSTATE-PUT-INST-PROP"
471                "DSTATE-NEXTPOS" "DSTATE-SEGMENT-LENGTH"
472                "DSTATE-SEGMENT-SAP" "DSTATE-SEGMENT-START"
473                "FIELD-TYPE" "FIND-INST" "GEN-FIELD-TYPE-DECL-FORM"
474                "GEN-INST-DECL-FORM" "GEN-INST-FORMAT-DECL-FORM"
475                "GET-CODE-SEGMENTS" "GET-FUN-SEGMENTS"
476                "GET-INST-SPACE" "HANDLE-BREAK-ARGS"
477                "INST" "INST-FORMAT" "LABEL-SEGMENTS"
478                "MAYBE-NOTE-ASSEMBLER-ROUTINE"
479                "MAYBE-NOTE-ASSOCIATED-STORAGE-REF"
480                "MAYBE-NOTE-NIL-INDEXED-OBJECT"
481                "MAYBE-NOTE-NIL-INDEXED-SYMBOL-SLOT-REF"
482                "MAYBE-NOTE-SINGLE-STORAGE-REF" "NOTE"
483                "NOTE-CODE-CONSTANT" "PARAMS" "PRIN1-QUOTED-SHORT"
484                "PRIN1-SHORT" "PRINT-BYTES"
485                "PRINT-CURRENT-ADDRESS" "PRINT-FIELD" "PRINT-INST"
486                "PRINT-INST-USING" "PRINT-NOTES-AND-NEWLINE"
487                "PRINT-WORDS" "SAP-REF-DCHUNK" "SEG-DEBUG-FUN"
488                "SEG-LENGTH" "SEG-START" "SEGMENT"
489                "SET-ADDRESS-PRINTING-RANGE" "SET-DISASSEM-PARAMS"
490                "SET-DSTATE-SEGMENT" "SIGN-EXTEND" "SPECIALIZE"
491                "GEN-PRINTER-DEF-FORMS-DEF-FORM" "MAKE-DSTATE"
492                "DEFINE-ARG-TYPE" "GEN-ARG-TYPE-DEF-FORM"
493                "READ-SIGNED-SUFFIX" "ADD-OFFS-HOOK"
494                "MAKE-MEMORY-SEGMENT" "GEN-PREAMBLE-FORM"
495                "MAKE-SEGMENT" "SEGMENT-OVERFLOW"
496                "SEG-VIRTUAL-LOCATION" "MAKE-DECODED-INST"
497                "DCHUNK" "*DEFAULT-DSTATE-HOOKS*"
498                "MAKE-CODE-SEGMENT" "MAKE-OFFS-HOOK"
499                "DSTATE-SEGMENT" "DSTATE-CUR-OFFS"
500                "PRINC16" "INSTRUCTION" "DEFINE-INSTRUCTION-FORMAT"
501                "DSTATE-NEXT-OFFS" "INSTALL-INST-FLAVORS"
502                "SEG-SAP-MAKER" "DISASSEMBLE-ASSEM-SEGMENT"
503                "GEN-CLEAR-INFO-FORM" "READ-SUFFIX"
504                "MAP-SEGMENT-INSTRUCTIONS" "GEN-FORMAT-DEF-FORM"
505                "SET-LOCATION-PRINTING-RANGE" "MAKE-VECTOR-SEGMENT"
506                "ADD-OFFS-NOTE-HOOK" "ADD-OFFS-COMMENT-HOOK"
507                "DSTATE-CUR-ADDR" "DSTATE-NEXT-ADDR"))
509    #!+sb-dyncount
510    #s(sb-cold:package-data
511       :name "SB!DYNCOUNT"
512       :doc "private: some somewhat-stale code for collecting runtime statistics"
513       :use ("CL" "SB!ALIEN-INTERNALS" "SB!ALIEN" "SB!BIGNUM"
514                  "SB!EXT" "SB!INT" "SB!KERNEL" "SB!ASSEM" "SB!SYS")
515       :export ("*COLLECT-DYNAMIC-STATISTICS*"
516                "COUNT-ME"
517                "DYNCOUNT-INFO-COUNTS" "DYNCOUNT-INFO-COSTS"
518                "IR2-COMPONENT-DYNCOUNT-INFO"
519                "DYNCOUNT-INFO" "DYNCOUNT-INFO-P"))
521    #s(sb-cold:package-data
522       :name "SB!FASL"
523       :doc "private: stuff related to FASL load/dump logic (and GENESIS)"
524       :use ("CL" "SB!ALIEN" "SB!ASSEM" "SB!BIGNUM" "SB!C"
525                  "SB!EXT" "SB!INT" "SB!KERNEL" "SB!SYS")
526       :export ("*ASSEMBLER-ROUTINES*"
527                "+BACKEND-FASL-FILE-IMPLEMENTATION+"
528                "BUILD-ID-CORE-ENTRY-TYPE-CODE"
529                "*FASL-FILE-TYPE*"
530                "CLOSE-FASL-OUTPUT"
531                "DUMP-ASSEMBLER-ROUTINES"
532                "DUMP-OBJECT"
533                "DYNAMIC-CORE-SPACE-ID"
534                "END-CORE-ENTRY-TYPE-CODE"
535                "FASL-CONSTANT-ALREADY-DUMPED-P"
536                "+FASL-FILE-VERSION+"
537                "FASL-DUMP-COLD-LOAD-FORM" "FASL-DUMP-COMPONENT"
538                "FASL-DUMP-COLD-FSET"
539                "FASL-DUMP-LOAD-TIME-VALUE" "FASL-DUMP-LOAD-TIME-VALUE-LAMBDA"
540                "FASL-DUMP-SOURCE-INFO" "FASL-DUMP-TOPLEVEL-LAMBDA-CALL"
541                "FASL-NOTE-HANDLE-FOR-CONSTANT"
542                "FASL-OUTPUT" "FASL-OUTPUT-P"
543                "FASL-OUTPUT-ENTRY-TABLE" "FASL-OUTPUT-STREAM"
544                "FASL-VALIDATE-STRUCTURE"
545                "INITIAL-FUN-CORE-ENTRY-TYPE-CODE"
546                "*!LOAD-TIME-VALUES*"
547                "LOAD-TYPE-PREDICATE"
548                #!+(and sb-thread sb-lutex) "LUTEX-TABLE-CORE-ENTRY-TYPE-CODE"
549                "NEW-DIRECTORY-CORE-ENTRY-TYPE-CODE"
550                "OPEN-FASL-OUTPUT" "PAGE-TABLE-CORE-ENTRY-TYPE-CODE"
551                "READ-ONLY-CORE-SPACE-ID"
552                "*!REVERSED-COLD-TOPLEVELS*"
553                "STATIC-CORE-SPACE-ID"
554                "VERSION-CORE-ENTRY-TYPE-CODE"))
556    ;; This package is a grab bag for things which used to be internal
557    ;; symbols in package COMMON-LISP. Lots of these symbols are accessed
558    ;; with explicit SB!IMPL:: prefixes in the code. It would be nice to
559    ;; reduce the use of this practice, so if symbols from here which are
560    ;; accessed that way are found to belong more appropriately in an
561    ;; existing package (e.g. SB!KERNEL or SB!SYS or SB!EXT or SB!FASL),
562    ;; I (WHN 19990223) encourage maintainers to move them there..
563    #s(sb-cold:package-data
564       :name "SB!IMPL"
565       :doc "private: a grab bag of implementation details"
566       :use ("CL" "SB!ALIEN" "SB!BIGNUM" "SB!DEBUG" "SB!EXT"
567                  "SB!FASL" "SB!GRAY" "SB!INT" "SB!KERNEL" "SB!SYS"))
569    #s(sb-cold:package-data
570       :name "SB!EXT"
571       :doc "public: miscellaneous supported extensions to the ANSI Lisp spec"
572       :use ("CL" "SB!ALIEN" "SB!INT" "SB!SYS" "SB!GRAY")
573       :export ( ;; Information about how the program was invoked is
574                ;; nonstandard but very useful.
575                "*POSIX-ARGV*" "*CORE-PATHNAME*"
576                "POSIX-GETENV" "POSIX-ENVIRON"
578                ;; Atomic operations
579                "COMPARE-AND-SWAP"
580                "ATOMIC-INCF"
582                ;; Timing information
583                "CALL-WITH-TIMING"
585                ;; People have various good reasons to mess with the GC.
586                "*AFTER-GC-HOOKS*"
587                "BYTES-CONSED-BETWEEN-GCS"
588                "GC" "GC-OFF" "GC-ON" "GET-BYTES-CONSED"
589                "*GC-RUN-TIME*"
590                "PURIFY"
592                ;; Stack allocation control
593                "*STACK-ALLOCATE-DYNAMIC-EXTENT*"
595                ;; Customizing printing of compiler and debugger messages
596                "*COMPILER-PRINT-VARIABLE-ALIST*"
597                "*DEBUG-PRINT-VARIABLE-ALIST*"
599                ;; Hooks into init & save sequences
600                "*INIT-HOOKS*" "*SAVE-HOOKS*" "*EXIT-HOOKS*"
602                ;; There is no one right way to report progress on
603                ;; hairy compiles.
604                "*COMPILE-PROGRESS*"
606                ;; It can be handy to be able to evaluate expressions involving
607                ;; the thing under examination by CL:INSPECT.
608                "*INSPECTED*"
610                ;; There is no one right way to do efficiency notes.
611                "*EFFICIENCY-NOTE-COST-THRESHOLD*" "*EFFICIENCY-NOTE-LIMIT*"
613                ;; There's no one right way to report errors.
614                "*ENCLOSING-SOURCE-CUTOFF*"
615                "*UNDEFINED-WARNING-LIMIT*"
617                ;; and for dedicated users who really want to customize
618                ;; error reporting, we have
619                "DEFINE-SOURCE-CONTEXT"
621                ;; and given how many users dislike strict treatment of
622                ;; DEFCONSTANT, let's give them enough rope to escape by
623                "DEFCONSTANT-UNEQL" "DEFCONSTANT-UNEQL-NAME"
624                "DEFCONSTANT-UNEQL-NEW-VALUE" "DEFCONSTANT-UNEQL-OLD-VALUE"
626                ;; package-locking stuff
627                #!+sb-package-locks "PACKAGE-LOCKED-P"
628                #!+sb-package-locks "LOCK-PACKAGE"
629                #!+sb-package-locks "UNLOCK-PACKAGE"
630                #!+sb-package-locks "PACKAGE-IMPLEMENTED-BY-LIST"
631                #!+sb-package-locks "PACKAGE-IMPLEMENTS-LIST"
632                #!+sb-package-locks "ADD-IMPLEMENTATION-PACKAGE"
633                #!+sb-package-locks "REMOVE-IMPLEMENTATION-PACKAGE"
634                #!+sb-package-locks "WITH-UNLOCKED-PACKAGES"
635                #!+sb-package-locks "PACKAGE-LOCK-VIOLATION"
636                #!+sb-package-locks "PACKAGE-LOCKED-ERROR"
637                #!+sb-package-locks "SYMBOL-PACKAGE-LOCKED-ERROR"
638                #!+sb-package-locks "PACKAGE-LOCKED-ERROR-SYMBOL"
639                "WITHOUT-PACKAGE-LOCKS"
640                "DISABLE-PACKAGE-LOCKS"
641                "ENABLE-PACKAGE-LOCKS"
643                ;; Custom conditions & condition accessors for users to handle.
644                "CODE-DELETION-NOTE"
645                "COMPILER-NOTE"
646                "IMPLICIT-GENERIC-FUNCTION-NAME"
647                "IMPLICIT-GENERIC-FUNCTION-WARNING"
648                "INVALID-FASL"
650                "NAME-CONFLICT" "NAME-CONFLICT-FUNCTION"
651                "NAME-CONFLICT-DATUM" "NAME-CONFLICT-SYMBOLS"
652                "RESOLVE-CONFLICT"
654                ;; and a mechanism for controlling same at compile time
655                "MUFFLE-CONDITIONS" "UNMUFFLE-CONDITIONS"
657                ;; and one for controlling same at runtime
658                "*MUFFLED-WARNINGS*"
660                ;; extended declarations..
661                "FREEZE-TYPE" "INHIBIT-WARNINGS"
662                "MAYBE-INLINE"
664                ;; ..and variables to control compiler policy
665                "*INLINE-EXPANSION-LIMIT*"
666                "*DERIVE-FUNCTION-TYPES*"
668                ;; ..and inspector of compiler policy
669                "DESCRIBE-COMPILER-POLICY"
670                "RESTRICT-COMPILER-POLICY"
672                ;; a special form for breaking out of our "declarations
673                ;; are assertions" default
674                "TRULY-THE"
676                ;; This is something which must exist inside any Common
677                ;; Lisp implementation, and which someone writing a
678                ;; customized toplevel might well want. It seems perverse
679                ;; to hide it from them..
680                "INTERACTIVE-EVAL"
682                ;; weak pointers and finalization
683                "CANCEL-FINALIZATION"
684                "FINALIZE"
685                "HASH-TABLE-WEAKNESS" "MAKE-WEAK-POINTER"
686                "WEAK-POINTER" "WEAK-POINTER-P" "WEAK-POINTER-VALUE"
688                ;; Hash table locking
689                "HASH-TABLE-SYNCHRONIZED-P"
690                "WITH-LOCKED-HASH-TABLE"
692                ;; If the user knows we're doing IEEE, he might reasonably
693                ;; want to do this stuff.
694                "FLOAT-DENORMALIZED-P"
695                "FLOAT-NAN-P" "FLOAT-TRAPPING-NAN-P"
696                "FLOAT-INFINITY-P"
697                "SHORT-FLOAT-NEGATIVE-INFINITY"
698                "SHORT-FLOAT-POSITIVE-INFINITY"
699                "SINGLE-FLOAT-NEGATIVE-INFINITY"
700                "SINGLE-FLOAT-POSITIVE-INFINITY"
701                "DOUBLE-FLOAT-NEGATIVE-INFINITY"
702                "DOUBLE-FLOAT-POSITIVE-INFINITY"
703                "LONG-FLOAT-NEGATIVE-INFINITY"
704                "LONG-FLOAT-POSITIVE-INFINITY"
706                ;; hacks to work around system limitations
707                "*INTEXP-MAXIMUM-EXPONENT*" ; since we crash hard when
708                                         ; memory is exhausted
710                ;; saving Lisp images
711                "SAVE-LISP-AND-DIE"
713                ;; provided for completeness to make it more convenient
714                ;; to use command-line --disable-debugger functionality
715                ;; in oddball situations (like building core files using
716                ;; scripts which run unattended, when the core files are
717                ;; intended for interactive use)
718                "DISABLE-DEBUGGER"
719                "ENABLE-DEBUGGER"
721                ;; the mechanism by which {en,dis}able-debugger works is
722                ;; also exported for people writing alternative toplevels
723                ;; (Emacs, CLIM interfaces, etc)
724                "*INVOKE-DEBUGGER-HOOK*"
726                ;; miscellaneous useful supported extensions
727                "QUIT"
728                "*ED-FUNCTIONS*"
729                "*MODULE-PROVIDER-FUNCTIONS*"
730                "WITH-TIMEOUT" "TIMEOUT"
732                ;; stepping interface
733                "STEP-CONDITION" "STEP-FORM-CONDITION" "STEP-FINISHED-CONDITION"
734                "STEP-VALUES-CONDITION" "STEP-VARIABLE-CONDITION"
735                "STEP-CONDITION-FORM" "STEP-CONDITION-RESULT"
736                "STEP-CONTINUE" "STEP-NEXT" "STEP-INTO"
737                "STEP-CONDITION-ARGS" "*STEPPER-HOOK*" "STEP-OUT"
739                ;; RUN-PROGRAM is not only useful for users, but also
740                ;; useful to implement parts of SBCL itself, so we're
741                ;; going to have to implement it anyway, so we might
742                ;; as well support it. And then once we're committed
743                ;; to implementing RUN-PROGRAM, it's nice to have it
744                ;; return a PROCESS object with operations defined on
745                ;; that object.
746                "RUN-PROGRAM"
747                "PROCESS-ALIVE-P" "PROCESS-CLOSE"
748                "PROCESS-CORE-DUMPED" "PROCESS-ERROR" "PROCESS-EXIT-CODE"
749                "PROCESS-INPUT" "PROCESS-KILL" "PROCESS-OUTPUT" "PROCESS-P"
750                "PROCESS-PID" "PROCESS-PLIST" "PROCESS-PTY" "PROCESS-STATUS"
751                "PROCESS-STATUS-HOOK" "PROCESS-WAIT"
753                ;; pathnames
754                "NATIVE-PATHNAME"
755                "PARSE-NATIVE-NAMESTRING"
756                "NATIVE-NAMESTRING"
758                ;; external-format support
759                "OCTETS-TO-STRING" "STRING-TO-OCTETS"
761                ;; Whether to use the interpreter or the compiler for EVAL
762                "*EVALUATOR-MODE*"
764                ;; timer
765                "TIMER" "MAKE-TIMER" "TIMER-NAME" "TIMER-SCHEDULED-P"
766                "SCHEDULE-TIMER" "UNSCHEDULE-TIMER" "LIST-ALL-TIMERS"))
768    #s(sb-cold:package-data
769       :name "SB!FORMAT"
770       :doc "private: implementation of FORMAT and friends"
771       :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")
772       :export ("%COMPILER-WALK-FORMAT-STRING" "FORMAT-ERROR"))
774    #s(sb-cold:package-data
775       :name "SB!GRAY"
776       :doc
777       "public: an implementation of the stream-definition-by-user
778 Lisp extension proposal by David N. Gray"
779       :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")
780       :export ("FUNDAMENTAL-BINARY-STREAM"
781                "FUNDAMENTAL-BINARY-INPUT-STREAM"
782                "FUNDAMENTAL-BINARY-OUTPUT-STREAM" "FUNDAMENTAL-CHARACTER-STREAM"
783                "FUNDAMENTAL-CHARACTER-INPUT-STREAM"
784                "FUNDAMENTAL-CHARACTER-OUTPUT-STREAM"
785                "FUNDAMENTAL-INPUT-STREAM" "FUNDAMENTAL-OUTPUT-STREAM"
786                "FUNDAMENTAL-STREAM"
787                "STREAM-ADVANCE-TO-COLUMN" "STREAM-CLEAR-INPUT"
788                "STREAM-CLEAR-OUTPUT" "STREAM-FILE-POSITION" "STREAM-FINISH-OUTPUT" "STREAM-FORCE-OUTPUT"
789                "STREAM-FRESH-LINE" "STREAM-LINE-COLUMN" "STREAM-LINE-LENGTH"
790                "STREAM-LISTEN" "STREAM-PEEK-CHAR" "STREAM-READ-BYTE"
791                "STREAM-READ-CHAR" "STREAM-READ-CHAR-NO-HANG" "STREAM-READ-LINE"
792                "STREAM-READ-SEQUENCE" "STREAM-START-LINE-P" "STREAM-TERPRI"
793                "STREAM-UNREAD-CHAR"
794                "STREAM-WRITE-BYTE" "STREAM-WRITE-CHAR" "STREAM-WRITE-SEQUENCE"
795                "STREAM-WRITE-STRING"))
797    #s(sb-cold:package-data
798       :name "SB!INT"
799       :doc
800       "private: miscellaneous unsupported extensions to the ANSI spec. Much of
801 the stuff in here originated in CMU CL's EXTENSIONS package and is retained,
802 possibly temporariliy, because it might be used internally."
803       :use ("CL" "SB!ALIEN" "SB!GRAY" "SB!FASL" "SB!SYS")
804       :export (;; lambda list keyword extensions
805                "&MORE"
807                ;; utilities for floating point zero handling
808                "FP-ZERO-P"
809                "NEG-FP-ZERO"
811                ;; Stack allocation without any questions asked
812                "TRULY-DYNAMIC-EXTENT"
814                ;; generic set implementation
815                "ADD-TO-XSET"
816                "ALLOC-XSET"
817                "MAP-XSET"
818                "XSET"
819                "XSET-COUNT"
820                "XSET-EMPTY-P"
821                "XSET-INTERSECTION"
822                "XSET-MEMBER-P"
823                "XSET-MEMBERS"
824                "XSET-SUBSET-P"
825                "XSET-UNION"
827                ;; communication between the runtime and Lisp
828                "*CORE-STRING*"
830                ;; INFO stuff doesn't belong in a user-visible package, we
831                ;; should be able to change it without apology.
832                "*INFO-ENVIRONMENT*"
833                "CLEAR-INFO"
834                "COMPACT-INFO-ENVIRONMENT"
835                "DEFINE-INFO-CLASS" "DEFINE-INFO-TYPE"
836                "DO-INFO"
837                "INFO"
838                "MAKE-INFO-ENVIRONMENT"
840                ;; GENSYM variant that appends the current non-nil block
841                ;; name to the string if possible
842                "BLOCK-GENSYM"
844                ;; Calling a list of hook functions, plus error handling.
845                "CALL-HOOKS"
847                ;; Constant form evaluation
848                "CONSTANT-FORM-VALUE"
849                "CONSTANT-TYPEP"
851                ;; stepping control
852                "*STEPPING*" "*STEP*"
854                ;; packages grabbed once and for all
855                "*KEYWORD-PACKAGE*" "*CL-PACKAGE*"
857                ;; hash mixing operations
858                "MIX" "MIXF"
860                ;; I'm not convinced that FDEFINITIONs are the ideal
861                ;; solution, so exposing ways to peek into the system
862                ;; seems undesirable, since it makes it harder to get
863                ;; rid of FDEFINITIONs entirely later.
864                "*SETF-FDEFINITION-HOOK*"
866                ;; error-reporting facilities
867                "CLOSED-STREAM-ERROR"
868                "COMPILED-PROGRAM-ERROR"
869                "ENCAPSULATED-CONDITION"
870                "INTERPRETED-PROGRAM-ERROR"
871                "SIMPLE-CONTROL-ERROR" "SIMPLE-FILE-ERROR"
872                "SIMPLE-PARSE-ERROR" "SIMPLE-PROGRAM-ERROR"
873                "SIMPLE-READER-ERROR"
874                "SIMPLE-READER-PACKAGE-ERROR"
875                "SIMPLE-REFERENCE-ERROR"
876                "SIMPLE-REFERENCE-WARNING"
877                "SIMPLE-STREAM-ERROR"
878                "SIMPLE-STORAGE-CONDITION"
879                "SIMPLE-STYLE-WARNING"
880                "TRY-RESTART"
882                ;; error-signalling facilities
883                "ARRAY-BOUNDING-INDICES-BAD-ERROR"
884                "SEQUENCE-BOUNDING-INDICES-BAD-ERROR"
886                "SPECIAL-FORM-FUNCTION"
887                "STYLE-WARN" "SIMPLE-COMPILER-NOTE"
889                ;; FIXME: potential SB!EXT exports
890                "CHARACTER-CODING-ERROR"
891                "CHARACTER-DECODING-ERROR" "CHARACTER-DECODING-ERROR-OCTETS"
892                "CHARACTER-ENCODING-ERROR" "CHARACTER-ENCODING-ERROR-CODE"
893                "STREAM-DECODING-ERROR" "STREAM-ENCODING-ERROR"
894                "C-STRING-ENCODING-ERROR" "C-STRING-ENCODING-ERROR-EXTERNAL-FORMAT"
895                "C-STRING-DECODING-ERROR" "C-STRING-DECODING-ERROR-EXTERNAL-FORMAT"
896                "ATTEMPT-RESYNC" "FORCE-END-OF-FILE"
898                ;; bootstrapping magic, to make things happen both in
899                ;; the cross-compilation host compiler's environment and
900                ;; in the cross-compiler's environment
901                "DEF!CONSTANT" "DEF!MACRO" "DEF!METHOD" "DEF!STRUCT" "DEF!TYPE"
903                ;; stuff for hinting to the compiler
904                "NAMED-LAMBDA"
906                ;; other variations on DEFFOO stuff useful for bootstrapping
907                ;; and cross-compiling
908                "DEFMACRO-MUNDANELY"
909                "DEFCONSTANT-EQX"
910                "DEFINE-UNSUPPORTED-FUN"
912                ;; messing with PATHNAMEs
913                "MAKE-TRIVIAL-DEFAULT-PATHNAME"
914                "PHYSICALIZE-PATHNAME"
915                "SANE-DEFAULT-PATHNAME-DEFAULTS"
916                "SBCL-HOMEDIR-PATHNAME"
917                "SIMPLIFY-NAMESTRING"
919                ;; PCOUNTERs
920                "FASTBIG-INCF-PCOUNTER-OR-FIXNUM"
921                "INCF-PCOUNTER"
922                "INCF-PCOUNTER-OR-FIXNUM"
923                "MAKE-PCOUNTER"
924                "PCOUNTER"
925                "PCOUNTER->INTEGER"
926                "PCOUNTER-OR-FIXNUM->INTEGER"
927                "PCOUNTER-P"
928                "*N-BYTES-FREED-OR-PURIFIED*"
930                ;; miscellaneous non-standard but handy user-level functions..
931                "ASSQ" "DELQ" "MEMQ" "POSQ" "NEQ"
932                "ADJUST-LIST"
933                "%FIND-PACKAGE-OR-LOSE" "FIND-UNDELETED-PACKAGE-OR-LOSE"
934                "SANE-PACKAGE"
935                "MAYBE-CYCLIC-P"
936                "COMPOUND-OBJECT-P"
937                "SWAPPED-ARGS-FUN"
938                "AND/TYPE" "NOT/TYPE"
939                "ANY/TYPE" "EVERY/TYPE"
940                "EQUAL-BUT-NO-CAR-RECURSION"
941                "TYPE-BOUND-NUMBER"
942                "CONSTANTLY-T" "CONSTANTLY-NIL" "CONSTANTLY-0"
943                "PSXHASH"
944                "%BREAK"
945                "NTH-BUT-WITH-SANE-ARG-ORDER"
946                "DEPRECATION-WARNING"
947                "BIT-VECTOR-="
948                "READ-EVALUATED-FORM"
949                "MAKE-UNPRINTABLE-OBJECT"
950                "POWER-OF-TWO-CEILING"
952                ;; ..and macros..
953                "COLLECT"
954                "DO-ANONYMOUS" "DOHASH" "DOVECTOR"
955                "NAMED-LET"
956                "ONCE-ONLY"
957                "DEFENUM"
958                "DEFPRINTER"
959                "AVER" "ENFORCE-TYPE"
960                "DX-FLET" "DX-LET"
961                "AWHEN" "ACOND" "IT"
962                "BINDING*"
963                "!DEF-BOOLEAN-ATTRIBUTE"
964                "WITH-REBOUND-IO-SYNTAX"
965                "WITH-SANE-IO-SYNTAX"
967                ;; ..and CONDITIONs..
968                "BUG"
969                "UNSUPPORTED-OPERATOR"
971                "BOOTSTRAP-PACKAGE-NAME"
972                "BOOTSTRAP-PACKAGE-NOT-FOUND"
973                "DEBOOTSTRAP-PACKAGE"
975                "REFERENCE-CONDITION" "REFERENCE-CONDITION-REFERENCES"
976                "*PRINT-CONDITION-REFERENCES*"
978                "DUPLICATE-DEFINITION" "DUPLICATE-DEFINITION-NAME"
979                "PACKAGE-AT-VARIANCE" "ARRAY-INITIAL-ELEMENT-MISMATCH"
980                "TYPE-WARNING" "LOCAL-ARGUMENT-MISMATCH"
981                "FORMAT-ARGS-MISMATCH" "FORMAT-TOO-FEW-ARGS-WARNING"
982                "FORMAT-TOO-MANY-ARGS-WARNING" "EXTENSION-FAILURE"
983                "STRUCTURE-INITARG-NOT-KEYWORD" "CONSTANT-MODIFIED"
985                ;; ..and DEFTYPEs..
986                "INDEX" "LOAD/STORE-INDEX"
987                "SIGNED-BYTE-WITH-A-BITE-OUT"
988                "UNSIGNED-BYTE-WITH-A-BITE-OUT"
989                "SFUNCTION" "UNSIGNED-BYTE*"
990                "CONSTANT-DISPLACEMENT"
991                ;; ..and type predicates
992                "INSTANCEP"
993                "DOUBLE-FLOAT-P"
994                "LOGICAL-PATHNAME-P"
995                "LONG-FLOAT-P"
996                "SHORT-FLOAT-P"
997                "SINGLE-FLOAT-P"
998                "FIXNUMP"
999                "BIGNUMP"
1000                "RATIOP"
1002                ;; encapsulation
1003                "ARG-LIST"
1004                "BASIC-DEFINITION"
1005                "ENCAPSULATE" "ENCAPSULATED-P"
1006                "UNENCAPSULATE"
1008                ;; various CHAR-CODEs
1009                "BACKSPACE-CHAR-CODE" "BELL-CHAR-CODE" "ESCAPE-CHAR-CODE"
1010                "FORM-FEED-CHAR-CODE" "LINE-FEED-CHAR-CODE"
1011                "RETURN-CHAR-CODE" "RUBOUT-CHAR-CODE" "TAB-CHAR-CODE"
1013                ;; symbol-hacking idioms
1014                "KEYWORDICATE" "SYMBOLICATE"
1016                ;; certainly doesn't belong in public extensions
1017                ;; FIXME: maybe belongs in %KERNEL with other typesystem stuff?
1018                "CONSTANT-ARG"
1020                ;; various internal defaults
1021                "DEFAULT-INIT-CHAR" "*DEFAULT-INIT-CHAR-FORM*"
1022                "*LOAD-SOURCE-DEFAULT-TYPE*" "BASE-CHAR-CODE-LIMIT"
1024                ;; hash caches
1025                "DEFINE-HASH-CACHE"
1026                "DEFUN-CACHED"
1027                "DEFINE-CACHED-SYNONYM"
1029                ;; time
1030                "FORMAT-DECODED-TIME"
1031                "FORMAT-UNIVERSAL-TIME"
1033                ;; indenting
1034                "MAKE-INDENTING-STREAM"
1036                ;; stream commands, used by the debugger
1037                "GET-STREAM-COMMAND" "MAKE-STREAM-COMMAND" "STREAM-COMMAND"
1038                "STREAM-COMMAND-ARGS" "STREAM-COMMAND-NAME" "STREAM-COMMAND-P"
1040                ;; used for FORMAT tilde paren
1041                "MAKE-CASE-FROB-STREAM"
1043                ;; helpers for C library calls
1044                "STRERROR" "SIMPLE-PERROR"
1046                ;; debuggers' little helpers
1047                #!+sb-show "*/SHOW*"
1048                #!+sb-show "HEXSTR"
1049                "/SHOW"  "/NOSHOW"
1050                "/XHOW"  "/NOXHOW"
1051                "/SHOW0" "/NOSHOW0"
1052                "/HEXSTR" "/NOHEXSTR"
1053                "/PRIMITIVE-PRINT" "/NO-PRIMITIVE-PRINT"
1055                ;; cross-compilation bootstrap hacks which turn into
1056                ;; placeholders in a target system
1057                "UNCROSS"
1059                ;; might as well be shared among the various files which
1060                ;; need it:
1061                "*EOF-OBJECT*"
1063                ;; allocation to static space
1064                "MAKE-STATIC-VECTOR"
1066                ;; alien interface utilities
1067                "C-STRINGS->STRING-LIST"
1069                ;; misc. utilities used internally
1070                "DEFINE-FUNCTION-NAME-SYNTAX" "VALID-FUNCTION-NAME-P" ; should be SB!EXT?
1071                "LEGAL-FUN-NAME-P" "LEGAL-FUN-NAME-OR-TYPE-ERROR"
1072                "FUN-NAME-BLOCK-NAME"
1073                "FUN-NAME-INLINE-EXPANSION"
1074                "LISTEN-SKIP-WHITESPACE"
1075                "PACKAGE-INTERNAL-SYMBOL-COUNT" "PACKAGE-EXTERNAL-SYMBOL-COUNT"
1076                "PARSE-BODY" "PARSE-LAMBDA-LIST" "PARSE-LAMBDA-LIST-LIKE-THING"
1077                "PROPER-LIST-OF-LENGTH-P"
1078                "LIST-OF-LENGTH-AT-LEAST-P"
1079                "LIST-WITH-LENGTH-P"
1080                "SINGLETON-P"
1081                "READ-SEQUENCE-OR-DIE"
1082                "RENAME-KEY-ARGS"
1083                "MISSING-ARG"
1084                "UNIX-NAMESTRING" ; FIXME: perhaps belongs in package SB!UNIX
1085                "FEATUREP"
1086                "FLUSH-STANDARD-OUTPUT-STREAMS"
1087                "WITH-UNIQUE-NAMES" "MAKE-GENSYM-LIST"
1088                "ABOUT-TO-MODIFY-SYMBOL-VALUE"
1089                "SELF-EVALUATING-P"
1090                "PRINT-PRETTY-ON-STREAM-P"
1091                "ARRAY-READABLY-PRINTABLE-P"
1092                "LOOKS-LIKE-NAME-OF-SPECIAL-VAR-P"
1093                "POSITIVE-PRIMEP"
1094                "EVAL-IN-LEXENV"
1095                "SIMPLE-EVAL-IN-LEXENV"
1096                "DEBUG-NAMIFY"
1097                "FORCE" "DELAY" "PROMISE-READY-P"
1098                "FIND-RESTART-OR-CONTROL-ERROR"
1100                ;; These could be moved back into SB!EXT if someone has
1101                ;; compelling reasons, but hopefully we can get by
1102                ;; without supporting them, at least not as publicly
1103                ;; accessible things with fixed interfaces.
1104                "GET-FLOATING-POINT-MODES"
1105                "SET-FLOATING-POINT-MODES"
1106                "WITH-FLOAT-TRAPS-MASKED"
1107                "DEFINE-HASH-TABLE-TEST"
1109                ;; compatibility hacks for old-style CMU CL data formats
1110                "UNIX-ENVIRONMENT-CMUCL-FROM-SBCL"
1111                "UNIX-ENVIRONMENT-SBCL-FROM-CMUCL"
1113                ;; a sort of quasi-unbound tag for use in hash tables
1114                "+EMPTY-HT-SLOT+"
1116                ;; low-level i/o stuff
1117                "DONE-WITH-FAST-READ-BYTE"
1118                "DONE-WITH-FAST-READ-CHAR"
1119                "FAST-READ-BYTE"
1120                "FAST-READ-BYTE-REFILL"
1121                "FAST-READ-CHAR"
1122                "FAST-READ-CHAR-REFILL"
1123                "FAST-READ-S-INTEGER"
1124                "FAST-READ-U-INTEGER"
1125                "FAST-READ-VAR-U-INTEGER"
1126                "FILE-NAME"
1127                "INTERN*"
1128                "PREPARE-FOR-FAST-READ-BYTE"
1129                "PREPARE-FOR-FAST-READ-CHAR"
1131                ;; reflection of our backquote implementation that the
1132                ;; pprinter needs
1133                "*BACKQ-TOKENS*"
1135                ;; hackery to help set up for cold init
1136                "!BEGIN-COLLECTING-COLD-INIT-FORMS"
1137                "!COLD-INIT-FORMS"
1138                "COLD-FSET"
1139                "!DEFUN-FROM-COLLECTED-COLD-INIT-FORMS"
1141                ;; catch tags
1142                "TOPLEVEL-CATCHER"
1144                ;; hooks for contrib/ stuff we're insufficiently sure
1145                ;; about to add to SB!EXT
1146                "*REPL-PROMPT-FUN*"
1147                "*REPL-READ-FORM-FUN*"))
1149    ;; FIXME: This package is awfully huge. It'd probably be good to
1150    ;; split it. There's at least one natural way to split it: the
1151    ;; implementation of the Lisp type system (e.g. TYPE-INTERSECTION and
1152    ;; SPECIFIER-TYPE) could move to a separate package SB!TYPE. (There's
1153    ;; lots of stuff which currently uses the SB!KERNEL package which
1154    ;; doesn't actually use the type system stuff.) And maybe other
1155    ;; possible splits too:
1156    ;;   * Pull GC stuff (*GC-INHIBIT*, *GC-PENDING*, etc.)
1157    ;;     out into SB-GC.
1158    ;;   * Pull special case implementations of sequence functions (e.g.
1159    ;;     %MAP-TO-LIST-ARITY-1 and %FIND-POSITION-IF-NOT) and
1160    ;;     other sequence function implementation grot into SB-SEQ.
1161    ;;   * Pull all the math stuff (%ACOS, %COSH, WORD-LOGICAL-AND...)
1162    ;;     into SB-MATH.
1163    ;;   * Pull all the array stuff (%ARRAY-DATA-VECTOR, %RAW-REF-LONG,
1164    ;;     WITH-ARRAY-DATA, ALLOCATE-VECTOR, HAIRY-DATA-VECTOR-REF...)
1165    ;;     into SB-ARRAY.
1166    ;;   * Pull all the streams stuff out into SB-STREAM.
1167    ;;   * Pull all the OBJECT-NOT-FOO symbols out. Maybe we could even
1168    ;;     figure out a way to stop exporting them? Failing that,
1169    ;;     they could be in SB-INTERR.
1170    #s(sb-cold:package-data
1171       :name "SB!KERNEL"
1172       :doc
1173       "private: Theoretically this 'hides state and types used for package
1174 integration' (said CMU CL architecture.tex) and that probably was and
1175 is a good idea, but see SB-SYS re. blurring of boundaries."
1176       :use ("CL" "SB!ALIEN" "SB!ALIEN-INTERNALS" "SB!BIGNUM"
1177                  "SB!EXT" "SB!FASL" "SB!INT" "SB!SYS" "SB!GRAY")
1178       :reexport ("DEF!STRUCT" "DEF!MACRO")
1179       :export ("%ACOS"
1180                "%ACOSH"
1181                "%ADJOIN"
1182                "%ADJOIN-EQ"
1183                "%ADJOIN-KEY"
1184                "%ADJOIN-KEY-EQ"
1185                "%ADJOIN-KEY-TEST"
1186                "%ADJOIN-KEY-TEST-NOT"
1187                "%ADJOIN-TEST"
1188                "%ADJOIN-TEST-NOT"
1189                "%ARRAY-AVAILABLE-ELEMENTS" "%ARRAY-DATA-VECTOR"
1190                "%ARRAY-DIMENSION" "%ARRAY-DISPLACED-P"
1191                "%ARRAY-DISPLACEMENT" "%ARRAY-FILL-POINTER"
1192                "%ARRAY-FILL-POINTER-P" "%ARRAY-RANK"
1193                "%ASSOC"
1194                "%ASSOC-EQ"
1195                "%ASSOC-IF"
1196                "%ASSOC-IF-KEY"
1197                "%ASSOC-IF-NOT"
1198                "%ASSOC-IF-NOT-KEY"
1199                "%ASSOC-KEY"
1200                "%ASSOC-KEY-EQ"
1201                "%ASSOC-KEY-TEST"
1202                "%ASSOC-KEY-TEST-NOT"
1203                "%ASSOC-TEST"
1204                "%ASSOC-TEST-NOT"
1205                "%ASIN" "%ASINH"
1206                "%ATAN" "%ATAN2" "%ATANH" "%CALLER-FRAME-AND-PC"
1207                "%CHECK-BOUND"
1208                "%CHECK-GENERIC-SEQUENCE-BOUNDS"
1209                "%CHECK-VECTOR-SEQUENCE-BOUNDS"
1210                "%CLOSURE-FUN" "%CLOSURE-INDEX-REF"
1211                "%COMPARE-AND-SWAP-CAR"
1212                "%COMPARE-AND-SWAP-CDR"
1213                "%COMPARE-AND-SWAP-INSTANCE-REF"
1214                "%COMPARE-AND-SWAP-SVREF"
1215                "%COMPARE-AND-SWAP-SYMBOL-PLIST"
1216                "%COMPARE-AND-SWAP-SYMBOL-VALUE"
1217                "%COS" "%COS-QUICK"
1218                "%COSH" "%DATA-VECTOR-AND-INDEX" "%DEPOSIT-FIELD"
1219                "%DOUBLE-FLOAT" "%DPB" "%EQL" "%EXP" "%EXPM1" "%FIND-POSITION"
1220                "%FIND-POSITION-VECTOR-MACRO" "%FIND-POSITION-IF"
1221                "%FIND-POSITION-IF-VECTOR-MACRO" "%FIND-POSITION-IF-NOT"
1222                "%FIND-POSITION-IF-NOT-VECTOR-MACRO"
1223                "%FUN-DOC"
1224                "%FUN-FUN"
1225                "%FUN-NAME"
1226                "%HYPOT" "%LDB" "%LOG" "%LOGB" "%LOG10"
1227                "%LAST0"
1228                "%LAST1"
1229                "%LASTN/FIXNUM"
1230                "%LASTN/BIGNUM"
1231                "%LOG1P"
1232                #!+long-float "%LONG-FLOAT"
1233                "%MAKE-COMPLEX" "%MAKE-FUNCALLABLE-INSTANCE"
1234                "%MAKE-RATIO" "%MAKE-LISP-OBJ"
1235                "%MAKE-INSTANCE"
1236                "%MAKE-STRUCTURE-INSTANCE"
1237                "%MAKE-STRUCTURE-INSTANCE-ALLOCATOR"
1238                "%MAP" "%MAP-TO-SIMPLE-VECTOR-ARITY-1"
1239                "%MAP-TO-LIST-ARITY-1" "%MAP-TO-NIL-ON-SEQUENCE"
1240                "%MAP-TO-NIL-ON-SIMPLE-VECTOR" "%MAP-TO-NIL-ON-VECTOR"
1241                "%MASK-FIELD"
1242                "%MEMBER"
1243                "%MEMBER-EQ"
1244                "%MEMBER-IF"
1245                "%MEMBER-IF-KEY"
1246                "%MEMBER-IF-NOT"
1247                "%MEMBER-IF-NOT-KEY"
1248                "%MEMBER-KEY"
1249                "%MEMBER-KEY-EQ"
1250                "%MEMBER-KEY-TEST"
1251                "%MEMBER-KEY-TEST-NOT"
1252                "%MEMBER-TEST"
1253                "%MEMBER-TEST-NOT"
1254                "%NEGATE" "%POW" "%PUTHASH"
1255                "%RASSOC"
1256                "%RASSOC-EQ"
1257                "%RASSOC-IF"
1258                "%RASSOC-IF-KEY"
1259                "%RASSOC-IF-NOT"
1260                "%RASSOC-IF-NOT-KEY"
1261                "%RASSOC-KEY"
1262                "%RASSOC-KEY-EQ"
1263                "%RASSOC-KEY-TEST"
1264                "%RASSOC-KEY-TEST-NOT"
1265                "%RASSOC-TEST"
1266                "%RASSOC-TEST-NOT"
1267                "%RAW-BITS" "%RAW-BITS-WITH-OFFSET" "%VECTOR-RAW-BITS"
1268                "%RAW-REF-COMPLEX-DOUBLE" "%RAW-REF-COMPLEX-LONG"
1269                "%RAW-REF-COMPLEX-SINGLE" "%RAW-REF-DOUBLE"
1270                "%RAW-REF-LONG" "%RAW-REF-SINGLE"
1271                "%RAW-SET-COMPLEX-DOUBLE" "%RAW-SET-COMPLEX-LONG"
1272                "%RAW-SET-COMPLEX-SINGLE" "%RAW-SET-DOUBLE"
1273                "%RAW-SET-LONG" "%RAW-SET-SINGLE" "%SCALB" "%SCALBN"
1274                #!+(or x86 x86-64)
1275                "%RAW-INSTANCE-ATOMIC-INCF/WORD"
1276                "%RAW-INSTANCE-REF/WORD" "%RAW-INSTANCE-SET/WORD"
1277                "%RAW-INSTANCE-REF/SINGLE" "%RAW-INSTANCE-SET/SINGLE"
1278                "%RAW-INSTANCE-REF/DOUBLE" "%RAW-INSTANCE-SET/DOUBLE"
1279                "%RAW-INSTANCE-REF/COMPLEX-SINGLE"
1280                "%RAW-INSTANCE-SET/COMPLEX-SINGLE"
1281                "%RAW-INSTANCE-REF/COMPLEX-DOUBLE"
1282                "%RAW-INSTANCE-SET/COMPLEX-DOUBLE"
1283                "%SET-ARRAY-DIMENSION" "%SET-FUNCALLABLE-INSTANCE-INFO"
1284                "%SET-RAW-BITS" "%SET-RAW-BITS-WITH-OFFSET"
1285                "%SET-VECTOR-RAW-BITS"
1286                "%SET-SAP-REF-16" "%SET-SAP-REF-32" "%SET-SAP-REF-64"
1287                "%SET-SAP-REF-WORD" "%SET-SAP-REF-8" "%SET-SAP-REF-DOUBLE"
1288                "%SET-SAP-REF-LONG" "%SET-SAP-REF-SAP"
1289                "%SET-SAP-REF-SINGLE" "%SET-SIGNED-SAP-REF-16"
1290                "%SET-SIGNED-SAP-REF-32" "%SET-SIGNED-SAP-REF-64"
1291                "%SET-SIGNED-SAP-REF-WORD"
1292                "%SET-SIGNED-SAP-REF-8" "%SET-STACK-REF"
1293                "%SET-SYMBOL-HASH"
1294                "%SIN" "%SIN-QUICK" "%SINGLE-FLOAT"
1295                "%SINH" "%SQRT" "%SXHASH-SIMPLE-STRING"
1296                "%SXHASH-SIMPLE-SUBSTRING" "%TAN" "%TAN-QUICK" "%TANH"
1297                "%UNARY-ROUND" "%UNARY-TRUNCATE" "%UNARY-FTRUNCATE"
1298                "%WITH-ARRAY-DATA"
1299                "%WITH-ARRAY-DATA/FP"
1300                "%WITH-ARRAY-DATA-MACRO"
1301                "*CURRENT-LEVEL-IN-PRINT*"
1302                "*EMPTY-TYPE*"
1303                "*EVAL-CALLS*"
1304                "*GC-INHIBIT*" "*GC-PENDING*"
1305                #!+sb-thread "*STOP-FOR-GC-PENDING*"
1306                "*UNIVERSAL-TYPE*"
1307                "*UNIVERSAL-FUN-TYPE*" "*UNPARSE-FUN-TYPE-SIMPLIFY*"
1308                "*WILD-TYPE*" "WORD-LOGICAL-AND" "WORD-LOGICAL-ANDC1"
1309                "WORD-LOGICAL-ANDC2" "WORD-LOGICAL-EQV"
1310                "WORD-LOGICAL-NAND" "WORD-LOGICAL-NOR" "WORD-LOGICAL-NOT"
1311                "WORD-LOGICAL-OR" "WORD-LOGICAL-ORC1" "WORD-LOGICAL-ORC2"
1312                "WORD-LOGICAL-XOR" "ALIEN-TYPE-TYPE"
1313                "ALIEN-TYPE-TYPE-ALIEN-TYPE" "ALIEN-TYPE-TYPE-P"
1314                "ALLOCATE-VECTOR" "ALLOCATE-STATIC-VECTOR"
1315                "ASSERT-SYMBOL-HOME-PACKAGE-UNLOCKED"
1316                "PROGRAM-ASSERT-SYMBOL-HOME-PACKAGE-UNLOCKED"
1317                "DISABLED-PACKAGE-LOCKS"
1318                "WITH-SINGLE-PACKAGE-LOCKED-ERROR"
1319                "PACKAGE-ERROR-FORMAT-ARGUMENTS"
1320                "PACKAGE-ERROR-FORMAT-CONTROL" "ALWAYS-SUBTYPEP"
1321                "ARGS-TYPE" "ARGS-TYPE-ALLOWP" "ARGS-TYPE-KEYP"
1322                "ARGS-TYPE-KEYWORDS" "ARGS-TYPE-OPTIONAL" "ARGS-TYPE-P"
1323                "ARGS-TYPE-REQUIRED" "ARGS-TYPE-REST" "ARRAY-HEADER-P"
1324                "ARRAY-TYPE" "ARRAY-TYPE-COMPLEXP"
1325                "ARRAY-TYPE-DIMENSIONS" "ARRAY-TYPE-ELEMENT-TYPE"
1326                "ARRAY-TYPE-P" "ARRAY-TYPE-SPECIALIZED-ELEMENT-TYPE"
1327                "ASH-INDEX" "ASSERT-ERROR"
1328                #!+sb-unicode "BASE-CHAR-P"
1329                "BASE-STRING-P"
1330                "BINDING-STACK-POINTER-SAP" "BIT-INDEX"
1331                "BOGUS-ARG-TO-VALUES-LIST-ERROR" "BOOLE-CODE"
1332                "BOUNDING-INDICES-BAD-ERROR" "BYTE-SPECIFIER" "%BYTE-BLT"
1333                "CALLABLE" "CASE-BODY-ERROR"
1334                "CHARACTER-SET" "CHARACTER-SET-TYPE"
1335                "CHARACTER-SET-TYPE-PAIRS"
1336                #!+sb-unicode "CHARACTER-STRING-P"
1337                "CHARPOS"
1338                "CHECK-FOR-CIRCULARITY" "CHECK-TYPE-ERROR" "CLOSED-FLAME"
1339                "CODE-COMPONENT" "CODE-COMPONENT-P" "CODE-DEBUG-INFO"
1340                "CODE-HEADER-REF" "CODE-HEADER-SET" "CODE-INSTRUCTIONS"
1341                "COERCE-TO-FUN" "COERCE-TO-LEXENV" "COERCE-TO-LIST"
1342                "COERCE-TO-VALUES" "COERCE-TO-VECTOR"
1343                "*COLD-INIT-COMPLETE-P*" "COMPLEX-DOUBLE-FLOAT-P"
1344                "COMPLEX-FLOAT-P"
1345                #!+long-float "COMPLEX-LONG-FLOAT-P"
1346                "COMPLEX-RATIONAL-P" "COMPLEX-SINGLE-FLOAT-P"
1347                "COMPLEX-VECTOR-P" "COMPOUND-TYPE" "COMPOUND-TYPE-P"
1348                "COMPOUND-TYPE-TYPES" "CONS-TYPE" "CONS-TYPE-CAR-TYPE"
1349                "CONS-TYPE-CDR-TYPE" "CONS-TYPE-P" "CONSED-SEQUENCE"
1350                "CONSTANT" "CONSTANT-TYPE" "CONSTANT-TYPE-P"
1351                "CONSTANT-TYPE-TYPE" "CONTAINING-INTEGER-TYPE"
1352                "CONTROL-STACK-POINTER-SAP" "COPY-BYTE-VECTOR-TO-SYSTEM-AREA"
1353                "CSUBTYPEP" "CTYPE" "TYPE-HASH-VALUE" "CTYPE-OF"
1354                "CTYPE-P" "CTYPEP" "CURRENT-FP" "CURRENT-SP"
1355                "CURRENT-DYNAMIC-SPACE-START"
1356                "DATA-VECTOR-REF" "DATA-VECTOR-REF-WITH-OFFSET"
1357                "DATA-VECTOR-SET" "DATA-VECTOR-SET-WITH-OFFSET"
1358                "DECLARATION-TYPE-CONFLICT-ERROR"
1359                "DECODE-DOUBLE-FLOAT"
1360                #!+long-float "DECODE-LONG-FLOAT"
1361                "DECODE-SINGLE-FLOAT"
1362                "DEFINE-STRUCTURE-SLOT-ADDRESSOR"
1363                "DEFINED-FTYPE-MATCHES-DECLARED-FTYPE-P"
1364                "!DEFSTRUCT-WITH-ALTERNATE-METACLASS" "DESCEND-INTO"
1365                "DISPLACED-TO-ARRAY-TOO-SMALL-ERROR"
1366                "DIVISION-BY-ZERO-ERROR" "DOUBLE-FLOAT-EXPONENT"
1367                "DOUBLE-FLOAT-HIGH-BITS" "DOUBLE-FLOAT-INT-EXPONENT"
1368                "DOUBLE-FLOAT-LOW-BITS" "DOUBLE-FLOAT-SIGNIFICAND"
1369                "FLOAT-WAIT" "DYNAMIC-SPACE-FREE-POINTER" "DYNAMIC-USAGE"
1370                "EFFECTIVE-FIND-POSITION-TEST"
1371                "EFFECTIVE-FIND-POSITION-KEY" "ERROR-NUMBER-OR-LOSE"
1372                "EXTENDED-CHAR-P"
1373                "FDEFINITION-OBJECT"
1374                "FDOCUMENTATION" "FILENAME"
1375                "FIND-AND-INIT-OR-CHECK-LAYOUT"
1376                "FIND-DEFSTRUCT-DESCRIPTION"
1377                "FLOAT-EXPONENT"
1378                "FLOAT-FORMAT-DIGITS" "FLOAT-FORMAT-NAME"
1379                "FLOAT-FORMAT-MAX" "FLOAT-INT-EXPONENT"
1380                "FLOATING-POINT-EXCEPTION" "FORM" "FORMAT-CONTROL"
1381                "*FREE-INTERRUPT-CONTEXT-INDEX*" "FUNCALLABLE-INSTANCE-P"
1382                "FUN-CODE-HEADER" "FUN-TYPE" "FUN-TYPE-ALLOWP"
1383                "FUN-TYPE-KEYP" "FUN-TYPE-KEYWORDS" "FUN-TYPE-NARGS"
1384                "FUN-TYPE-OPTIONAL" "FUN-TYPE-P" "FUN-TYPE-REQUIRED"
1385                "FUN-TYPE-REST" "FUN-TYPE-RETURNS" "FUN-TYPE-WILD-ARGS"
1386                "FUN-WORD-OFFSET" "GENERALIZED-BOOLEAN"
1387                "GET-CLOSURE-LENGTH" "GET-HEADER-DATA"
1388                "GET-LISP-OBJ-ADDRESS" "LOWTAG-OF" "WIDETAG-OF"
1389                "GET-MACHINE-VERSION" "HAIRY-DATA-VECTOR-REF"
1390                "HAIRY-DATA-VECTOR-REF/CHECK-BOUNDS"  "HAIRY-DATA-VECTOR-SET"
1391                "HAIRY-DATA-VECTOR-SET/CHECK-BOUNDS""HAIRY-TYPE"
1392                "HAIRY-TYPE-CHECK-TEMPLATE-NAME" "HAIRY-TYPE-SPECIFIER"
1393                "HANDLE-CIRCULARITY" "HOST" "IGNORE-IT" "ILL-BIN"
1394                "ILL-BOUT" "ILL-IN" "ILL-OUT" "INDEX-OR-MINUS-1"
1395                "INDEX-TOO-LARGE-ERROR" "*!INITIAL-ASSEMBLER-ROUTINES*"
1396                "*!INITIAL-FDEFN-OBJECTS*" "*!INITIAL-FOREIGN-SYMBOLS*"
1397                "*!INITIAL-LAYOUTS*" "*!INITIAL-SYMBOLS*"
1398                "INTEGER-DECODE-DOUBLE-FLOAT"
1399                #!+long-float "INTEGER-DECODE-LONG-FLOAT"
1400                "INTEGER-DECODE-SINGLE-FLOAT" "INTERNAL-ERROR"
1401                #!+win32 "HANDLE-WIN32-EXCEPTION"
1402                "INTERNAL-TIME" "INTERSECTION-TYPE" "INTERSECTION-TYPE-P"
1403                "INTERSECTION-TYPE-TYPES" "INVALID-ARG-COUNT-ERROR"
1404                "INVALID-ARRAY-INDEX-ERROR" "INVALID-UNWIND-ERROR"
1405                "IRRATIONAL" "JUST-DUMP-IT-NORMALLY" "KEY-INFO"
1406                "KEY-INFO-NAME" "KEY-INFO-P" "KEY-INFO-TYPE"
1407                "LAYOUT-DEPTHOID" "LAYOUT-INVALID-ERROR"
1408                "LAYOUT-N-UNTAGGED-SLOTS" "LAYOUT-FOR-STD-CLASS-P"
1409                "LAYOUT-SLOT-TABLE"
1410                #!+(or x86-64 x86) "%LEA"
1411                "LEXENV" "LEXENV-DESIGNATOR" "LINE-LENGTH"
1412                "LIST-COPY-SEQ*"
1413                "LIST-FILL*"
1414                "LIST-SUBSEQ*"
1415                "ANSI-STREAM"
1416                "ANSI-STREAM-BIN" "ANSI-STREAM-BOUT" "ANSI-STREAM-CLOSE"
1417                "ANSI-STREAM-ELEMENT-TYPE"
1418                "ANSI-STREAM-FILE-POSITION"
1419                "ANSI-STREAM-IN"
1420                "ANSI-STREAM-IN-BUFFER" "ANSI-STREAM-IN-INDEX"
1421                "ANSI-STREAM-INPUT-STREAM-P" "ANSI-STREAM-MISC"
1422                "ANSI-STREAM-N-BIN" "ANSI-STREAM-OPEN-STREAM-P"
1423                "ANSI-STREAM-OUT" "ANSI-STREAM-SOUT"
1424                "ANSI-STREAM-OUTPUT-STREAM-P" "LIST-TO-VECTOR*"
1425                "LOGICAL-HOST" "LOGICAL-HOST-DESIGNATOR"
1426                #!+long-float "LONG-FLOAT-EXPONENT"
1427                #!+long-float "LONG-FLOAT-EXP-BITS"
1428                #!+long-float "LONG-FLOAT-HIGH-BITS"
1429                #!+long-float "LONG-FLOAT-LOW-BITS"
1430                #!+long-float "LONG-FLOAT-MID-BITS"
1431                "LONG-WORDS" "LRA" "LRA-CODE-HEADER" "LRA-P"
1432                "MAKE-ALIEN-TYPE-TYPE" "MAKE-ARGS-TYPE"
1433                "MAKE-ARRAY-HEADER" "MAKE-ARRAY-TYPE" "MAKE-CONS-TYPE"
1434                "MAKE-DOUBLE-FLOAT" "MAKE-FUN-TYPE" "MAKE-KEY-INFO"
1435                "MAKE-LISP-OBJ"
1436                #!+long-float "MAKE-LONG-FLOAT"
1437                "MAKE-MEMBER-TYPE" "MAKE-NAMED-TYPE" "MAKE-NULL-LEXENV"
1438                "MAKE-NUMERIC-TYPE"
1439                "MAKE-SINGLE-FLOAT" "MAKE-SPECIALIZABLE-ARRAY"
1440                "MAKE-UNPORTABLE-FLOAT"
1441                "MAKE-SHORT-VALUES-TYPE" "MAKE-SINGLE-VALUE-TYPE"
1442                "MAKE-VALUE-CELL" "MAKE-VALUES-TYPE"
1443                "MAPC-MEMBER-TYPE-MEMBERS" "MAPCAR-MEMBER-TYPE-MEMBERS"
1444                "MEMBER-TYPE" "MEMBER-TYPE-MEMBERS" "MEMBER-TYPE-P"
1445                "MEMBER-TYPE-SIZE" "MERGE-BITS"
1446                "MODIFIED-NUMERIC-TYPE"
1447                "MOST-NEGATIVE-EXACTLY-DOUBLE-FLOAT-FIXNUM"
1448                "MOST-NEGATIVE-EXACTLY-SINGLE-FLOAT-FIXNUM"
1449                "MOST-POSITIVE-EXACTLY-DOUBLE-FLOAT-FIXNUM"
1450                "MOST-POSITIVE-EXACTLY-SINGLE-FLOAT-FIXNUM"
1451                "MUTATOR-SELF" "NAMED-TYPE"
1452                "NAMED-TYPE-NAME" "NAMED-TYPE-P" "NATIVE-BYTE-ORDER"
1453                "NEGATE" "NEGATION-TYPE" "NEGATION-TYPE-TYPE"
1454                "NEVER-SUBTYPEP" "NIL-ARRAY-ACCESSED-ERROR"
1455                "NIL-FUN-RETURNED-ERROR" "NOT-<=-ERROR" "NOT-=-ERROR"
1456                "NOT-DUMPED-AT-ALL" "NUMERIC-CONTAGION" "NUMERIC-TYPE"
1457                "NUMERIC-TYPE-CLASS" "NUMERIC-TYPE-COMPLEXP"
1458                "NUMERIC-TYPE-EQUAL" "NUMERIC-TYPE-FORMAT"
1459                "NUMERIC-TYPE-HIGH" "NUMERIC-TYPE-LOW" "NUMERIC-TYPE-P"
1460                "OBJECT-NOT-ARRAY-ERROR" "OBJECT-NOT-CHARACTER-ERROR"
1461                "OBJECT-NOT-BASE-STRING-ERROR" "OBJECT-NOT-BIGNUM-ERROR"
1462                "OBJECT-NOT-BIT-VECTOR-ERROR"
1463                #!+sb-unicode "OBJECT-NOT-CHARACTER-STRING-ERROR"
1464                "OBJECT-NOT-COMPLEX-ERROR"
1465                "OBJECT-NOT-COMPLEX-FLOAT-ERROR"
1466                "OBJECT-NOT-COMPLEX-SINGLE-FLOAT-ERROR"
1467                #!+long-float "OBJECT-NOT-COMPLEX-LONG-FLOAT-ERROR"
1468                "OBJECT-NOT-COMPLEX-DOUBLE-FLOAT-ERROR"
1469                "OBJECT-NOT-COMPLEX-RATIONAL-ERROR"
1470                ;; FIXME: It's confusing using "complex" to mean both
1471                ;; "not on the real number line" and "not of a
1472                ;; SIMPLE-ARRAY nature". Perhaps we could rename all the
1473                ;; uses in the second sense as "hairy" instead?
1474                "OBJECT-NOT-COMPLEX-VECTOR-ERROR" "OBJECT-NOT-CONS-ERROR"
1475                "OBJECT-NOT-DOUBLE-FLOAT-ERROR" "OBJECT-NOT-FIXNUM-ERROR"
1476                "OBJECT-NOT-FLOAT-ERROR" "OBJECT-NOT-FUN-ERROR"
1477                "OBJECT-NOT-INSTANCE-ERROR" "OBJECT-NOT-INTEGER-ERROR"
1478                "OBJECT-NOT-LIST-ERROR"
1479                #!+long-float "OBJECT-NOT-LONG-FLOAT-ERROR"
1480                "OBJECT-NOT-NUMBER-ERROR" "OBJECT-NOT-RATIO-ERROR"
1481                "OBJECT-NOT-RATIONAL-ERROR" "OBJECT-NOT-REAL-ERROR"
1482                "OBJECT-NOT-SAP-ERROR" "OBJECT-NOT-SIGNED-BYTE-32-ERROR"
1483                ;; FIXME: 32/64-bit issues
1484                "OBJECT-NOT-SIGNED-BYTE-64-ERROR"
1485                "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-ERROR"
1486                #!+long-float
1487                "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-ERROR"
1488                "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-ERROR"
1489                "OBJECT-NOT-SIMPLE-ARRAY-DOUBLE-FLOAT-ERROR"
1490                "OBJECT-NOT-SIMPLE-ARRAY-ERROR"
1491                #!+long-float "OBJECT-NOT-SIMPLE-ARRAY-LONG-FLOAT-ERROR"
1492                "OBJECT-NOT-SIMPLE-ARRAY-NIL-ERROR"
1493                "OBJECT-NOT-SIMPLE-ARRAY-SINGLE-FLOAT-ERROR"
1494                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-15-ERROR"
1495                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-16-ERROR"
1496                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-2-ERROR"
1497                ;; KLUDGE: 32-bit and 64-bit ports implement a different
1498                ;; set of specialized array types.  Various bits of code
1499                ;; in SBCL assume that symbols connected to the
1500                ;; specialized array types are exported.  But there's not
1501                ;; a good way at this point to know whether the port for
1502                ;; which we're building is 32-bit or 64-bit.  Granted, we
1503                ;; could hardcode the particulars (or even come up with a
1504                ;; special :64BIT feature), but that seems a little
1505                ;; inelegant.  For now, we brute-force the issue by
1506                ;; always exporting all the names required for both
1507                ;; 32-bit and 64-bit ports.  Other bits connected to the
1508                ;; same issue are noted throughout the code below with
1509                ;; the tag "32/64-bit issues".  --njf, 2004-08-09
1510                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-29-ERROR"
1511                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-31-ERROR"
1512                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-32-ERROR"
1513                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-4-ERROR"
1514                ;; FIXME: 32/64-bit issues
1515                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-60-ERROR"
1516                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-63-ERROR"
1517                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-64-ERROR"
1518                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-7-ERROR"
1519                "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-8-ERROR"
1520                "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-16-ERROR"
1521                ;; FIXME: 32/64-bit issues
1522                "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-30-ERROR"
1523                "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-32-ERROR"
1524                ;; FIXME: 32/64-bit issues
1525                "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-61-ERROR"
1526                "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-64-ERROR"
1527                "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-8-ERROR"
1528                "OBJECT-NOT-SIMPLE-BIT-VECTOR-ERROR"
1529                "OBJECT-NOT-SIMPLE-BASE-STRING-ERROR"
1530                #!+sb-unicode "OBJECT-NOT-SIMPLE-CHARACTER-STRING-ERROR"
1531                "OBJECT-NOT-SIMPLE-STRING-ERROR"
1532                "OBJECT-NOT-SIMPLE-VECTOR-ERROR"
1533                "OBJECT-NOT-SINGLE-FLOAT-ERROR" "OBJECT-NOT-STRING-ERROR"
1534                "OBJECT-NOT-INSTANCE-ERROR" "OBJECT-NOT-SYMBOL-ERROR"
1535                "OBJECT-NOT-TYPE-ERROR"
1536                "OBJECT-NOT-UNSIGNED-BYTE-32-ERROR"
1537                ;; FIXME: 32/64-bit issues
1538                "OBJECT-NOT-UNSIGNED-BYTE-64-ERROR"
1539                "OBJECT-NOT-VECTOR-ERROR"
1540                "OBJECT-NOT-VECTOR-NIL-ERROR"
1541                "OBJECT-NOT-WEAK-POINTER-ERROR"
1542                "ODD-KEY-ARGS-ERROR" "OUTPUT-OBJECT" "OUTPUT-UGLY-OBJECT"
1543                "PACKAGE-DESIGNATOR" "PACKAGE-DOC-STRING"
1544                "PACKAGE-HASHTABLE-SIZE" "PACKAGE-HASHTABLE-FREE"
1545                "PACKAGE-INTERNAL-SYMBOLS" "PACKAGE-EXTERNAL-SYMBOLS"
1546                "PARSE-DEFMACRO" "PARSE-UNKNOWN-TYPE"
1547                "PARSE-UNKNOWN-TYPE-SPECIFIER" "PATHNAME-DESIGNATOR"
1548                "POINTER-HASH"
1549                #!+(or x86 x86-64) "*PSEUDO-ATOMIC-BITS*"
1550                "PUNT-PRINT-IF-TOO-LONG"
1551                "RAW-INSTANCE-SLOTS-EQUALP"
1552                "READER-IMPOSSIBLE-NUMBER-ERROR"
1553                "READER-EOF-ERROR"
1554                "RESTART-DESIGNATOR"
1555                "RUN-PENDING-FINALIZERS"
1556                "SCALE-DOUBLE-FLOAT"
1557                #!+long-float "SCALE-LONG-FLOAT"
1558                "SCALE-SINGLE-FLOAT"
1559                "SCRUB-POWER-CACHE"
1560                "SEQUENCEP" "SEQUENCE-COUNT" "SEQUENCE-END"
1561                "SEQUENCE-OF-CHECKED-LENGTH-GIVEN-TYPE"
1562                "SET-ARRAY-HEADER" "SET-HEADER-DATA" "SHIFT-TOWARDS-END"
1563                "SHIFT-TOWARDS-START" "SHRINK-VECTOR" "%SHRINK-VECTOR"
1564                ;; FIXME: 32/64-bit issues
1565                "SIGNED-BYTE-32-P" "SIGNED-BYTE-64-P"
1566                "SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-P"
1567                #!+long-float "SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-P"
1568                "SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-P"
1569                "SIMPLE-ARRAY-DOUBLE-FLOAT-P"
1570                #!+long-float "SIMPLE-ARRAY-LONG-FLOAT-P"
1571                "SIMPLE-ARRAY-NIL-P" "SIMPLE-ARRAY-P"
1572                "SIMPLE-ARRAY-SINGLE-FLOAT-P"
1573                "SIMPLE-ARRAY-UNSIGNED-BYTE-15-P"
1574                "SIMPLE-ARRAY-UNSIGNED-BYTE-16-P"
1575                "SIMPLE-ARRAY-UNSIGNED-BYTE-2-P"
1576                ;; FIXME: 32/64-bit issues
1577                "SIMPLE-ARRAY-UNSIGNED-BYTE-29-P"
1578                "SIMPLE-ARRAY-UNSIGNED-BYTE-31-P"
1579                "SIMPLE-ARRAY-UNSIGNED-BYTE-32-P"
1580                "SIMPLE-ARRAY-UNSIGNED-BYTE-4-P"
1581                ;; FIXME: 32/64-bit issues
1582                "SIMPLE-ARRAY-UNSIGNED-BYTE-60-P"
1583                "SIMPLE-ARRAY-UNSIGNED-BYTE-63-P"
1584                "SIMPLE-ARRAY-UNSIGNED-BYTE-64-P"
1585                "SIMPLE-ARRAY-UNSIGNED-BYTE-7-P"
1586                "SIMPLE-ARRAY-UNSIGNED-BYTE-8-P"
1587                "SIMPLE-ARRAY-SIGNED-BYTE-16-P"
1588                "SIMPLE-ARRAY-SIGNED-BYTE-30-P"
1589                "SIMPLE-ARRAY-SIGNED-BYTE-32-P"
1590                ;; FIXME: 32/64-bit issues
1591                "SIMPLE-ARRAY-SIGNED-BYTE-61-P"
1592                "SIMPLE-ARRAY-SIGNED-BYTE-64-P"
1593                "SIMPLE-ARRAY-SIGNED-BYTE-8-P" "SIMPLE-BASE-STRING-P"
1594                #!+sb-unicode "SIMPLE-CHARACTER-STRING-P"
1595                "SIMPLE-PACKAGE-ERROR" "SIMPLE-UNBOXED-ARRAY"
1596                "SINGLE-FLOAT-BITS" "SINGLE-FLOAT-EXPONENT"
1597                "SINGLE-FLOAT-INT-EXPONENT" "SINGLE-FLOAT-SIGNIFICAND"
1598                "SINGLE-VALUE-TYPE" "SINGLE-VALUE-SPECIFIER-TYPE"
1599                "SPECIALIZABLE" "SPECIALIZABLE-VECTOR" "SPECIFIER-TYPE"
1600                "STACK-REF" "STREAM-DESIGNATOR" "STRING-DESIGNATOR"
1601                "STRING-FILL*"
1602                "STRING-SUBSEQ*"
1603                "STRUCTURE-RAW-SLOT-TYPE-AND-SIZE" "SUB-GC"
1604                "SYMBOLS-DESIGNATOR"
1605                "%INSTANCE-LENGTH"
1606                "%INSTANCE-REF"
1607                "%INSTANCE-SET"
1608                "SYSTEM-AREA-CLEAR"
1609                "TLS-EXHAUSTED-ERROR"
1610                "TWO-ARG-*" "TWO-ARG-+" "TWO-ARG--" "TWO-ARG-/"
1611                "TWO-ARG-/=" "TWO-ARG-<" "TWO-ARG-<=" "TWO-ARG-="
1612                "TWO-ARG->" "TWO-ARG->=" "TWO-ARG-AND" "TWO-ARG-EQV"
1613                "TWO-ARG-GCD" "TWO-ARG-IOR" "TWO-ARG-LCM" "TWO-ARG-XOR"
1614                "TYPE-DIFFERENCE" "TYPE-EXPAND" "TYPE-INTERSECTION"
1615                "TYPE-INTERSECTION2" "TYPE-APPROX-INTERSECTION2"
1616                "TYPE-SINGLE-VALUE-P" "TYPE-SPECIFIER" "TYPE-UNION"
1617                "TYPE/=" "TYPE=" "TYPES-EQUAL-OR-INTERSECT"
1618                "UNBOUND-SYMBOL-ERROR" "UNBOXED-ARRAY"
1619                "UNDEFINED-FUN-ERROR" "UNION-TYPE" "UNION-TYPE-P"
1620                "UNION-TYPE-TYPES" "UNKNOWN-ERROR"
1621                "UNKNOWN-KEY-ARG-ERROR" "UNKNOWN-TYPE" "UNKNOWN-TYPE-P"
1622                "UNKNOWN-TYPE-SPECIFIER" "UNSEEN-THROW-TAG-ERROR"
1623                ;; FIXME: 32/64-bit issues
1624                "UNSIGNED-BYTE-32-P" "UNSIGNED-BYTE-64-P"
1625                "UPDATE-OBJECT-LAYOUT-OR-INVALID"
1626                "VALUE-CELL-REF" "VALUE-CELL-SET" "VALUES-SPECIFIER-TYPE"
1627                "VALUES-SPECIFIER-TYPE-CACHE-CLEAR" "VALUES-SUBTYPEP"
1628                "VALUES-TYPE" "VALUES-TYPE-ERROR" "VALUES-TYPE-IN"
1629                "VALUES-TYPE-INTERSECTION" "VALUES-TYPE-OPTIONAL"
1630                "VALUES-TYPE-OUT" "VALUES-TYPE-P" "VALUES-TYPE-REQUIRED"
1631                "VALUES-TYPE-REST" "VALUES-TYPE-UNION"
1632                "VALUES-TYPE-TYPES" "VALUES-TYPES"
1633                "VALUES-TYPES-EQUAL-OR-INTERSECT" "VECTOR-T-P"
1634                "VECTOR-NIL-P"
1635                "VECTOR-FILL*"
1636                "VECTOR-SUBSEQ*"
1637                "VECTOR-TO-VECTOR*"
1638                "VECTOR-OF-CHECKED-LENGTH-GIVEN-LENGTH" "WITH-ARRAY-DATA"
1639                "WITH-CIRCULARITY-DETECTION" "WRONG-NUMBER-OF-INDICES-ERROR"
1641                ;; bit bash fillers (FIXME: 32/64-bit issues)
1642                "UB1-BASH-FILL" "SYSTEM-AREA-UB1-FILL"
1643                "UB2-BASH-FILL" "SYSTEM-AREA-UB2-FILL"
1644                "UB4-BASH-FILL" "SYSTEM-AREA-UB4-FILL"
1645                "UB8-BASH-FILL" "SYSTEM-AREA-UB8-FILL"
1646                "UB16-BASH-FILL" "SYSTEM-AREA-UB16-FILL"
1647                "UB32-BASH-FILL" "SYSTEM-AREA-UB32-FILL"
1648                "UB64-BASH-FILL" "SYSTEM-AREA-UB64-FILL"
1650                ;; bit bash copiers (FIXME: 32/64-bit issues)
1651                "UB1-BASH-COPY" "SYSTEM-AREA-UB1-COPY"
1652                "COPY-UB1-TO-SYSTEM-AREA" "COPY-UB1-FROM-SYSTEM-AREA"
1653                "UB2-BASH-COPY" "SYSTEM-AREA-UB2-COPY"
1654                "COPY-UB2-TO-SYSTEM-AREA" "COPY-UB2-FROM-SYSTEM-AREA"
1655                "UB4-BASH-COPY" "SYSTEM-AREA-UB4-COPY"
1656                "COPY-UB4-TO-SYSTEM-AREA" "COPY-UB4-FROM-SYSTEM-AREA"
1657                "UB8-BASH-COPY" "SYSTEM-AREA-UB8-COPY"
1658                "COPY-UB8-TO-SYSTEM-AREA" "COPY-UB8-FROM-SYSTEM-AREA"
1659                "UB16-BASH-COPY" "SYSTEM-AREA-UB16-COPY"
1660                "COPY-UB16-TO-SYSTEM-AREA" "COPY-UB16-FROM-SYSTEM-AREA"
1661                "UB32-BASH-COPY" "SYSTEM-AREA-UB32-COPY"
1662                "COPY-UB32-TO-SYSTEM-AREA" "COPY-UB32-FROM-SYSTEM-AREA"
1663                "UB64-BASH-COPY" "SYSTEM-AREA-UB64-COPY"
1664                "COPY-UB64-TO-SYSTEM-AREA" "COPY-UB64-FROM-SYSTEM-AREA"
1666                "FDEFN" "MAKE-FDEFN" "FDEFN-P" "FDEFN-NAME" "FDEFN-FUN"
1667                "FDEFN-MAKUNBOUND" "OUTER-FDEFN"
1668                "%COERCE-CALLABLE-TO-FUN" "FUN-SUBTYPE"
1669                "*MAXIMUM-ERROR-DEPTH*" "%SET-SYMBOL-PLIST"
1670                "INFINITE-ERROR-PROTECT"
1671                "FIND-CALLER-NAME-AND-FRAME"
1672                "FIND-INTERRUPTED-NAME-AND-FRAME"
1673                "%SET-SYMBOL-VALUE" "%SET-SYMBOL-PACKAGE"
1674                "OUTPUT-SYMBOL-NAME" "%COERCE-NAME-TO-FUN"
1675                "INVOKE-MACROEXPAND-HOOK" "DEFAULT-STRUCTURE-PRINT"
1676                "LAYOUT" "LAYOUT-LENGTH" "LAYOUT-PURE" "DSD-RAW-TYPE"
1677                "DEFSTRUCT-DESCRIPTION" "UNDEFINE-STRUCTURE" "DD-COPIER"
1678                "UNDEFINE-FUN-NAME" "DD-TYPE" "CLASSOID-STATE" "INSTANCE"
1679                "*TYPE-SYSTEM-INITIALIZED*" "FIND-LAYOUT" "DSD-NAME"
1680                "%TYPEP" "DD-RAW-INDEX" "DD-NAME" "CLASSOID-SUBCLASSES"
1681                "CLASSOID-LAYOUT" "CLASSOID-NAME" "CLASSOID-P"
1682                "DD-RAW-LENGTH" "NOTE-NAME-DEFINED" "%CODE-CODE-SIZE"
1683                "DD-SLOTS" "DD-INCLUDE" "SLOT-SETTER-LAMBDA-FORM"
1684                "%IMAGPART" "DSD-ACCESSOR-NAME" "%CODE-DEBUG-INFO"
1685                "LAYOUT-CLASSOID" "LAYOUT-INVALID" "%SIMPLE-FUN-NAME"
1686                "DSD-TYPE" "%INSTANCEP" "DEFSTRUCT-SLOT-DESCRIPTION"
1687                "%SIMPLE-FUN-ARGLIST" "%SIMPLE-FUN-NEXT"
1688                "DD-PREDICATE-NAME"
1689                "CLASSOID-PROPER-NAME" "%NOTE-TYPE-DEFINED" "LAYOUT-INFO"
1690                "%SET-INSTANCE-LAYOUT" "DD-DEFAULT-CONSTRUCTOR"
1691                "LAYOUT-OF" "%SIMPLE-FUN-SELF" "%REALPART"
1692                "STRUCTURE-CLASSOID-P" "DSD-INDEX" "STRUCTURE-CLASSOID"
1693                "%INSTANCE-LAYOUT" "LAYOUT-CLOS-HASH" "%SIMPLE-FUN-TYPE"
1694                "PROCLAIM-AS-FUN-NAME" "BECOME-DEFINED-FUN-NAME"
1695                "%NUMERATOR" "CLASSOID-TYPEP" "DSD-READ-ONLY"
1696                "DSD-DEFAULT" "LAYOUT-INHERITS" "DD-LENGTH"
1697                "%CODE-ENTRY-POINTS" "%DENOMINATOR" "%SIMPLE-FUN-XREFS"
1698                "%OTHER-POINTER-P"
1700                "STANDARD-CLASSOID" "CLASSOID-OF"
1701                "MAKE-STANDARD-CLASSOID"
1702                "CLASSOID-CELL-CLASSOID"
1703                "CLASSOID-CELL-NAME"
1704                "CLASSOID-CELL-PCL-CLASS"
1705                "CLASSOID-CELL-TYPEP"
1706                "CLEAR-CLASSOID"
1707                "FIND-CLASSOID-CELL" "EXTRACT-FUN-TYPE"
1708                "%RANDOM-DOUBLE-FLOAT"
1709                #!+long-float "%RANDOM-LONG-FLOAT"
1710                "%RANDOM-SINGLE-FLOAT" "STATIC-CLASSOID"
1711                "%FUNCALLABLE-INSTANCE-INFO" "RANDOM-CHUNK" "BIG-RANDOM-CHUNK"
1712                "LAYOUT-CLOS-HASH-LIMIT"
1713                "BUILT-IN-CLASSOID-DIRECT-SUPERCLASSES"
1714                "BUILT-IN-CLASSOID-TRANSLATION" "RANDOM-LAYOUT-CLOS-HASH"
1715                "CLASSOID-PCL-CLASS" "FUNCALLABLE-STRUCTURE"
1716                "FUNCALLABLE-INSTANCE-FUN" "%FUNCALLABLE-INSTANCE-LAYOUT"
1717                "%SET-FUNCALLABLE-INSTANCE-LAYOUT"
1718                "BASIC-STRUCTURE-CLASSOID"
1719                "REGISTER-LAYOUT"
1720                "FUNCALLABLE-INSTANCE" "RANDOM-FIXNUM-MAX"
1721                "MAKE-STATIC-CLASSOID" "INSTANCE-LAMBDA"
1722                "%MAKE-SYMBOL"
1723                "%FUNCALLABLE-INSTANCE-FUNCTION" "SYMBOL-HASH"
1725                "EXTENDED-SEQUENCE" "*EXTENDED-SEQUENCE-TYPE*"
1726                "EXTENDED-SEQUENCE-P"
1728                "BUILT-IN-CLASSOID" "CONDITION-CLASSOID-P"
1729                "CONDITION-CLASSOID-SLOTS" "MAKE-UNDEFINED-CLASSOID"
1730                "FIND-CLASSOID" "CLASSOID" "CLASSOID-DIRECT-SUPERCLASSES"
1731                "MAKE-LAYOUT" "REDEFINE-LAYOUT-WARNING" "SLOT-CLASSOID"
1732                "INSURED-FIND-CLASSOID" "ORDER-LAYOUT-INHERITS"
1733                "STD-COMPUTE-CLASS-PRECEDENCE-LIST"
1735                ;; symbols from former SB!CONDITIONS
1736                "*HANDLER-CLUSTERS*" "*RESTART-CLUSTERS*"
1737                "*CONDITION-RESTARTS*" "SHOW-CONDITION" "CASE-FAILURE"
1738                "NAMESTRING-PARSE-ERROR" "NAMESTRING-PARSE-ERROR-OFFSET"
1739                "DESCRIBE-CONDITION" "MAKE-RESTART" "COERCE-TO-CONDITION"
1741                "CONDITION-READER-FUNCTION"
1742                "CONDITION-WRITER-FUNCTION"
1744                "CONDITION-SLOT-ALLOCATION"
1745                "CONDITION-SLOT-DOCUMENTATION"
1746                "CONDITION-SLOT-INITARGS"
1747                "CONDITION-SLOT-INITFORM"
1748                "CONDITION-SLOT-INITFORM-P"
1749                "CONDITION-SLOT-NAME" "CONDITION-SLOT-READERS"
1750                "CONDITION-SLOT-WRITERS"
1752                "REDEFINITION-WARNING"
1753                "REDEFINITION-WITH-DEFUN"
1754                "REDEFINITION-WITH-DEFGENERIC"
1755                "REDEFINITION-WITH-DEFMETHOD"
1756                "REDEFINITION-REPLACES-GENERIC-FUNCTION-P"
1757                "REDEFINITION-REPLACES-COMPILED-FUNCTION-WITH-INTERPRETED-P"
1758                "UNINTERESTING-ORDINARY-FUNCTION-REDEFINITION-P"
1759                "UNINTERESTING-GENERIC-FUNCTION-REDEFINITION-P"
1760                "UNINTERESTING-METHOD-REDEFINITION-P"
1761                "UNINTERESTING-REDEFINITION"
1762                "REDEFINITION-WITH-DEFTRANSFORM"
1764                "DUBIOUS-ASTERISKS-AROUND-VARIABLE-NAME"
1765                "ASTERISKS-AROUND-LEXICAL-VARIABLE-NAME"
1766                "ASTERISKS-AROUND-CONSTANT-VARIABLE-NAME"
1767                "UNDEFINED-ALIEN-STYLE-WARNING"
1768                #!+sb-eval
1769                "LEXICAL-ENVIRONMENT-TOO-COMPLEX"
1770                "CHARACTER-DECODING-ERROR-IN-COMMENT"
1771                "DEPRECATED-EVAL-WHEN-SITUATIONS"
1772                "PROCLAMATION-MISMATCH"
1773                "TYPE-PROCLAMATION-MISMATCH"
1774                "FTYPE-PROCLAMATION-MISMATCH"
1776                "!COLD-INIT" "!UNINTERN-INIT-ONLY-STUFF"
1777                "!GLOBALDB-COLD-INIT" "!FDEFN-COLD-INIT"
1778                "!FOREIGN-COLD-INIT" "!FUNCTION-NAMES-COLD-INIT"
1779                "!TYPE-CLASS-COLD-INIT" "!TYPEDEFS-COLD-INIT"
1780                "!ALIEN-TYPE-COLD-INIT" "!CLASSES-COLD-INIT"
1781                "!EARLY-TYPE-COLD-INIT" "!LATE-TYPE-COLD-INIT"
1782                "!FIXUP-TYPE-COLD-INIT" "!TARGET-TYPE-COLD-INIT"
1783                "!RANDOM-COLD-INIT" "!READER-COLD-INIT"
1784                "!TYPECHECKFUNS-COLD-INIT" "!LOADER-COLD-INIT"
1785                "!EXHAUST-COLD-INIT" "!PACKAGE-COLD-INIT"
1786                "!POLICY-COLD-INIT-OR-RESANIFY"
1787                "!VM-TYPE-COLD-INIT" "!BACKQ-COLD-INIT"
1788                "!SHARPM-COLD-INIT" "!EARLY-PROCLAIM-COLD-INIT"
1789                "!LATE-PROCLAIM-COLD-INIT" "!CLASS-FINALIZE"
1790                "!CONSTANTP-COLD-INIT"
1792                "FLOAT-COLD-INIT-OR-REINIT"
1793                "GC-REINIT"
1794                "TIME-REINIT"
1795                "SIGNAL-COLD-INIT-OR-REINIT"
1796                "STREAM-COLD-INIT-OR-RESET"
1798                ;; Cleanups to run before saving a core
1799                "DEBUG-DEINIT"
1800                "FLOAT-DEINIT"
1801                "FOREIGN-DEINIT"
1802                "PROFILE-DEINIT"
1804                ;; Note: These are out of lexicographical order
1805                ;; because in CMU CL they were defined as
1806                ;; internal symbols in package "CL" imported
1807                ;; into package "C", as opposed to what we're
1808                ;; doing here, defining them as external symbols
1809                ;; in a package which is used by both "SB!C" and
1810                ;; "SB!IMPL". (SBCL's "SB!C" is directly
1811                ;; analogous to CMU CL's "C"; and for this
1812                ;; purpose, SBCL's "SB!IMPL" is analogous to CMU
1813                ;; CL's "CL".) As far as I know there's nothing
1814                ;; special about them, so they could be merged
1815                ;; into the same order as everything else in the
1816                ;; in this package. -- WHN 19990911
1817                "STRING>=*" "STRING>*" "STRING=*" "STRING<=*"
1818                "STRING<*" "STRING/=*" "%SVSET"
1819                "%SP-STRING-COMPARE" "%SETNTH" "%SETELT"
1820                "%SET-ROW-MAJOR-AREF" "%SET-FILL-POINTER"
1821                "%SET-FDEFINITION" "%SCHARSET" "%SBITSET"
1822                "%RPLACD" "%RPLACA" "%PUT" "%CHARSET" "%BITSET"
1823                "%ASET" "%ARRAY-TYPEP"))
1825    #s(sb-cold:package-data
1826       :name "SB!THREAD"
1827       :use ("CL" "SB!ALIEN" "SB!INT" "SB!SYS" "SB!KERNEL")
1828       :doc "public (but low-level): native thread support"
1829       :export ("*CURRENT-THREAD*" "THREAD" "MAKE-THREAD"
1830                "THREAD-NAME" "THREAD-ALIVE-P"
1831                "LIST-ALL-THREADS"
1832                "JOIN-THREAD" "JOIN-THREAD-ERROR" "JOIN-THREAD-ERROR-THREAD"
1833                "INTERRUPT-THREAD-ERROR"
1834                "INTERRUPT-THREAD-ERROR-THREAD"
1835                "INTERRUPT-THREAD" "TERMINATE-THREAD" "DESTROY-THREAD"
1836                "THREAD-YIELD"
1837                "MUTEX" "MAKE-MUTEX" "MUTEX-NAME" "MUTEX-VALUE"
1838                "GET-MUTEX" "RELEASE-MUTEX" "WITH-MUTEX"
1839                "WITH-RECURSIVE-LOCK"
1840                "WAITQUEUE" "MAKE-WAITQUEUE" "WAITQUEUE-NAME"
1841                "CONDITION-WAIT" "CONDITION-NOTIFY" "CONDITION-BROADCAST"
1842                "MAKE-LISTENER-THREAD"
1843                "RELEASE-FOREGROUND"
1844                "WITH-NEW-SESSION"
1845                ;; Semaphores
1846                "MAKE-SEMAPHORE"
1847                "SEMAPHORE"
1848                "SEMAPHORE-NAME"
1849                "SEMAPHORE-COUNT"
1850                "SIGNAL-SEMAPHORE"
1851                "WAIT-ON-SEMAPHORE"))
1853    #s(sb-cold:package-data
1854       :name "SB!LOOP"
1855       :doc "private: implementation details of LOOP"
1856       :use ("CL")
1857       :export ())
1859    #s(sb-cold:package-data
1860       :name "SB!MOP"
1861       :doc
1862       "public: the MetaObject Protocol interface, as defined by
1863 The Art of the Metaobject Protocol, by Kiczales, des Rivieres and Bobrow:
1864 ISBN 0-262-61074-4, with exceptions as noted in the User Manual."
1865       :use ("CL")
1866       :reexport ("ADD-METHOD"
1867                  "ALLOCATE-INSTANCE"
1868                  "CLASS-NAME" "COMPUTE-APPLICABLE-METHODS"
1869                  "ENSURE-GENERIC-FUNCTION" "MAKE-INSTANCE"
1870                  "METHOD-QUALIFIERS" "REMOVE-METHOD"
1871                  "BUILT-IN-CLASS" "CLASS"
1872                  "FUNCTION" "GENERIC-FUNCTION"
1873                  "METHOD" "METHOD-COMBINATION"
1874                  "STANDARD-CLASS" "STANDARD-GENERIC-FUNCTION"
1875                  "STANDARD-METHOD" "STANDARD-OBJECT" "T")
1876       :export ("ADD-DEPENDENT"
1877                "ADD-DIRECT-METHOD"
1878                "ADD-DIRECT-SUBCLASS"
1879                "CLASS-DEFAULT-INITARGS"
1880                "CLASS-DIRECT-DEFAULT-INITARGS"
1881                "CLASS-DIRECT-SLOTS"
1882                "CLASS-DIRECT-SUBCLASSES"
1883                "CLASS-DIRECT-SUPERCLASSES"
1884                "CLASS-FINALIZED-P"
1885                "CLASS-PRECEDENCE-LIST"
1886                "CLASS-PROTOTYPE"
1887                "CLASS-SLOTS"
1888                "COMPUTE-APPLICABLE-METHODS-USING-CLASSES"
1889                "COMPUTE-CLASS-PRECEDENCE-LIST"
1890                "COMPUTE-DEFAULT-INITARGS"
1891                "COMPUTE-DISCRIMINATING-FUNCTION"
1892                "COMPUTE-EFFECTIVE-METHOD"
1893                "COMPUTE-EFFECTIVE-SLOT-DEFINITION"
1894                "COMPUTE-SLOTS"
1895                "DIRECT-SLOT-DEFINITION"
1896                "DIRECT-SLOT-DEFINITION-CLASS"
1897                "EFFECTIVE-SLOT-DEFINITION"
1898                "EFFECTIVE-SLOT-DEFINITION-CLASS"
1899                "ENSURE-CLASS"
1900                "ENSURE-CLASS-USING-CLASS"
1901                "ENSURE-GENERIC-FUNCTION-USING-CLASS"
1902                "EQL-SPECIALIZER"
1903                "EQL-SPECIALIZER-OBJECT"
1904                "EXTRACT-LAMBDA-LIST"
1905                "EXTRACT-SPECIALIZER-NAMES"
1906                "FINALIZE-INHERITANCE"
1907                "FIND-METHOD-COMBINATION"
1908                "FORWARD-REFERENCED-CLASS"
1909                "FUNCALLABLE-STANDARD-CLASS"
1910                "FUNCALLABLE-STANDARD-INSTANCE-ACCESS"
1911                "FUNCALLABLE-STANDARD-OBJECT"
1912                "GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER"
1913                "GENERIC-FUNCTION-DECLARATIONS"
1914                "GENERIC-FUNCTION-LAMBDA-LIST"
1915                "GENERIC-FUNCTION-METHOD-CLASS"
1916                "GENERIC-FUNCTION-METHOD-COMBINATION"
1917                "GENERIC-FUNCTION-METHODS"
1918                "GENERIC-FUNCTION-NAME"
1919                "INTERN-EQL-SPECIALIZER"
1920                "MAKE-METHOD-LAMBDA"
1921                "MAP-DEPENDENTS"
1922                "METAOBJECT"
1923                "METHOD-FUNCTION"
1924                "METHOD-GENERIC-FUNCTION"
1925                "METHOD-LAMBDA-LIST"
1926                "METHOD-SPECIALIZERS"
1927                "ACCESSOR-METHOD-SLOT-DEFINITION"
1928                "READER-METHOD-CLASS"
1929                "REMOVE-DEPENDENT"
1930                "REMOVE-DIRECT-METHOD"
1931                "REMOVE-DIRECT-SUBCLASS"
1932                "SET-FUNCALLABLE-INSTANCE-FUNCTION"
1933                "SLOT-BOUNDP-USING-CLASS"
1934                "SLOT-DEFINITION"
1935                "SLOT-DEFINITION-ALLOCATION"
1936                "SLOT-DEFINITION-INITARGS"
1937                "SLOT-DEFINITION-INITFORM"
1938                "SLOT-DEFINITION-INITFUNCTION"
1939                "SLOT-DEFINITION-LOCATION"
1940                "SLOT-DEFINITION-NAME"
1941                "SLOT-DEFINITION-READERS"
1942                "SLOT-DEFINITION-WRITERS"
1943                "SLOT-DEFINITION-TYPE"
1944                "SLOT-MAKUNBOUND-USING-CLASS"
1945                "SLOT-VALUE-USING-CLASS"
1946                "SPECIALIZER"
1947                "SPECIALIZER-DIRECT-GENERIC-FUNCTIONS"
1948                "SPECIALIZER-DIRECT-METHODS"
1949                "STANDARD-ACCESSOR-METHOD"
1950                "STANDARD-DIRECT-SLOT-DEFINITION"
1951                "STANDARD-EFFECTIVE-SLOT-DEFINITION"
1952                "STANDARD-INSTANCE-ACCESS"
1953                "STANDARD-READER-METHOD"
1954                "STANDARD-SLOT-DEFINITION"
1955                "STANDARD-WRITER-METHOD"
1956                "UPDATE-DEPENDENT"
1957                "VALIDATE-SUPERCLASS"
1958                "WRITER-METHOD-CLASS"))
1960    #s(sb-cold:package-data
1961       :name "SB!PCL"
1962       :doc
1963       "semi-public: This package includes useful meta-object protocol
1964 extensions, but even they are not guaranteed to be present in later
1965 versions of SBCL, and the other stuff in here is definitely not
1966 guaranteed to be present in later versions of SBCL.  Use of this
1967 package is deprecated in favour of SB-MOP."
1968       :use ("CL" "SB!MOP" "SB!INT" "SB!EXT" "SB!WALKER" "SB!KERNEL")
1969       ;; experimental SBCL-only (for now) symbols
1970       :export ("MAKE-METHOD-SPECIALIZERS-FORM"
1971                "PARSE-SPECIALIZER-USING-CLASS"
1972                "UNPARSE-SPECIALIZER-USING-CLASS")
1973       ;; FIXME: After a little while, these reexports can probably go
1974       ;; away, as they're superseded by the use of SB-MOP as the
1975       ;; publically-accessible package.
1976       :reexport ( ;; CL symbols
1977                  "ADD-METHOD"
1978                  "ALLOCATE-INSTANCE"
1979                  "CLASS-NAME" "COMPUTE-APPLICABLE-METHODS"
1980                  "ENSURE-GENERIC-FUNCTION" "MAKE-INSTANCE"
1981                  "METHOD-QUALIFIERS" "REMOVE-METHOD"
1982                  ;; MOP symbols
1983                  "ADD-DEPENDENT"
1984                  "ADD-DIRECT-METHOD"
1985                  "ADD-DIRECT-SUBCLASS"
1986                  "CLASS-DEFAULT-INITARGS"
1987                  "CLASS-DIRECT-DEFAULT-INITARGS"
1988                  "CLASS-DIRECT-SLOTS"
1989                  "CLASS-DIRECT-SUBCLASSES"
1990                  "CLASS-DIRECT-SUPERCLASSES"
1991                  "CLASS-FINALIZED-P"
1992                  "CLASS-PRECEDENCE-LIST"
1993                  "CLASS-PROTOTYPE"
1994                  "CLASS-SLOTS"
1995                  "COMPUTE-APPLICABLE-METHODS-USING-CLASSES"
1996                  "COMPUTE-CLASS-PRECEDENCE-LIST"
1997                  "COMPUTE-DEFAULT-INITARGS"
1998                  "COMPUTE-DISCRIMINATING-FUNCTION"
1999                  "COMPUTE-EFFECTIVE-METHOD"
2000                  "COMPUTE-EFFECTIVE-SLOT-DEFINITION"
2001                  "COMPUTE-SLOTS"
2002                  "DIRECT-SLOT-DEFINITION"
2003                  "DIRECT-SLOT-DEFINITION-CLASS"
2004                  "EFFECTIVE-SLOT-DEFINITION"
2005                  "EFFECTIVE-SLOT-DEFINITION-CLASS"
2006                  "ENSURE-CLASS"
2007                  "ENSURE-CLASS-USING-CLASS"
2008                  "ENSURE-GENERIC-FUNCTION-USING-CLASS"
2009                  "EQL-SPECIALIZER"
2010                  "EQL-SPECIALIZER-OBJECT"
2011                  "EXTRACT-LAMBDA-LIST"
2012                  "EXTRACT-SPECIALIZER-NAMES"
2013                  "FINALIZE-INHERITANCE"
2014                  "FIND-METHOD-COMBINATION"
2015                  "FORWARD-REFERENCED-CLASS"
2016                  "FUNCALLABLE-STANDARD-CLASS"
2017                  "FUNCALLABLE-STANDARD-INSTANCE-ACCESS"
2018                  "FUNCALLABLE-STANDARD-OBJECT"
2019                  "GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER"
2020                  "GENERIC-FUNCTION-DECLARATIONS"
2021                  "GENERIC-FUNCTION-LAMBDA-LIST"
2022                  "GENERIC-FUNCTION-METHOD-CLASS"
2023                  "GENERIC-FUNCTION-METHOD-COMBINATION"
2024                  "GENERIC-FUNCTION-METHODS"
2025                  "GENERIC-FUNCTION-NAME"
2026                  "INTERN-EQL-SPECIALIZER"
2027                  "MAKE-METHOD-LAMBDA"
2028                  "MAP-DEPENDENTS"
2029                  "METHOD-FUNCTION"
2030                  "METHOD-GENERIC-FUNCTION"
2031                  "METHOD-LAMBDA-LIST"
2032                  "METHOD-SPECIALIZERS"
2033                  "ACCESSOR-METHOD-SLOT-DEFINITION"
2034                  "READER-METHOD-CLASS"
2035                  "REMOVE-DEPENDENT"
2036                  "REMOVE-DIRECT-METHOD"
2037                  "REMOVE-DIRECT-SUBCLASS"
2038                  "SET-FUNCALLABLE-INSTANCE-FUNCTION"
2039                  "SLOT-BOUNDP-USING-CLASS"
2040                  "SLOT-DEFINITION"
2041                  "SLOT-DEFINITION-ALLOCATION"
2042                  "SLOT-DEFINITION-INITARGS"
2043                  "SLOT-DEFINITION-INITFORM"
2044                  "SLOT-DEFINITION-INITFUNCTION"
2045                  "SLOT-DEFINITION-LOCATION"
2046                  "SLOT-DEFINITION-NAME"
2047                  "SLOT-DEFINITION-READERS"
2048                  "SLOT-DEFINITION-WRITERS"
2049                  "SLOT-DEFINITION-TYPE"
2050                  "SLOT-MAKUNBOUND-USING-CLASS"
2051                  "SLOT-VALUE-USING-CLASS"
2052                  "SPECIALIZER"
2053                  "SPECIALIZER-DIRECT-GENERIC-FUNCTIONS"
2054                  "SPECIALIZER-DIRECT-METHODS"
2055                  "STANDARD-ACCESSOR-METHOD"
2056                  "STANDARD-DIRECT-SLOT-DEFINITION"
2057                  "STANDARD-EFFECTIVE-SLOT-DEFINITION"
2058                  "STANDARD-INSTANCE-ACCESS"
2059                  "STANDARD-READER-METHOD"
2060                  "STANDARD-SLOT-DEFINITION"
2061                  "STANDARD-WRITER-METHOD"
2062                  "UPDATE-DEPENDENT"
2063                  "VALIDATE-SUPERCLASS"
2064                  "WRITER-METHOD-CLASS"))
2066    #s(sb-cold:package-data
2067       :name "SB!PRETTY"
2068       :doc "private: implementation of pretty-printing"
2069       :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")
2070       :export ("OUTPUT-PRETTY-OBJECT"
2071                "PRETTY-STREAM" "PRETTY-STREAM-P"
2072                "PPRINT-DISPATCH-TABLE"
2073                "!PPRINT-COLD-INIT"))
2075    #s(sb-cold:package-data
2076       :name "SB!PROFILE"
2077       :doc "public: the interface to the profiler"
2078       :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")
2079       :export ("PROFILE" "REPORT" "RESET" "UNPROFILE"))
2081    #s(sb-cold:package-data
2082       :name "SB!SEQUENCE"
2083       :doc "semi-public: implements something which might eventually
2084 be submitted as a CDR"
2085       :use ()
2086       :export ("DOSEQUENCE"
2088                "MAKE-SEQUENCE-ITERATOR" "MAKE-SIMPLE-SEQUENCE-ITERATOR"
2090                "ITERATOR-STEP" "ITERATOR-ENDP" "ITERATOR-ELEMENT"
2091                "ITERATOR-INDEX" "ITERATOR-COPY"
2093                "WITH-SEQUENCE-ITERATOR" "WITH-SEQUENCE-ITERATOR-FUNCTIONS"
2095                "CANONIZE-TEST" "CANONIZE-KEY"
2097                "LENGTH" "ELT"
2098                "MAKE-SEQUENCE-LIKE" "ADJUST-SEQUENCE"
2100                "COUNT" "COUNT-IF" "COUNT-IF-NOT"
2101                "FIND" "FIND-IF" "FIND-IF-NOT"
2102                "POSITION" "POSITION-IF" "POSITION-IF-NOT"
2103                "SUBSEQ" "COPY-SEQ" "FILL"
2104                "NSUBSTITUTE" "NSUBSTITUTE-IF" "NSUBSTITUTE-IF-NOT"
2105                "SUBSTITUTE" "SUBSTITUTE-IF" "SUBSTITUTE-IF-NOT"
2106                "REPLACE" "REVERSE" "NREVERSE" "REDUCE"
2107                "MISMATCH" "SEARCH"
2108                "DELETE" "DELETE-IF" "DELETE-IF-NOT"
2109                "REMOVE" "REMOVE-IF" "REMOVE-IF-NOT"
2110                "DELETE-DUPLICATES" "REMOVE-DUPLICATES" "SORT" "STABLE-SORT"))
2112    #s(sb-cold:package-data
2113       :name "SB!SYS"
2114       :doc
2115       "private: In theory, this \"contains functions and information
2116 necessary for system interfacing\" (said cmu-user.tex at the time
2117 of the SBCL code fork). That probably was and is a good idea, but in
2118 practice, the distinctions between this package and SB-KERNEL
2119 and even SB-VM seem to have become somewhat blurred over the years.
2120 Some anomalies (e.g. FIND-IF-IN-CLOSURE being in SB-SYS instead of
2121 SB-KERNEL) have been undone, but probably more remain."
2122       :use ("CL" "SB!EXT" "SB!INT")
2123       :export (;; FIXME: %PRIMITIVE shouldn't be here. (I now know that %SYS
2124                ;; is for OS-dependent stuff. %PRIMITIVE should probably be in
2125                ;; SB!KERNEL.)
2126                "%PRIMITIVE"
2127                "%STANDARD-CHAR-P"
2128                "*ALLOW-WITH-INTERRUPTS*"
2129                "*INTERRUPTS-ENABLED*"
2130                "*INTERRUPT-PENDING*"
2131                "*LINKAGE-INFO*"
2132                "*LONG-SITE-NAME*" "*SHORT-SITE-NAME*"
2133                "*PERIODIC-POLLING-FUNCTION*"
2134                "*PERIODIC-POLLING-PERIOD*"
2135                "*RUNTIME-DLHANDLE*"
2136                "*SHARED-OBJECTS*"
2137                "*STATIC-FOREIGN-SYMBOLS*"
2138                "*STDERR*" "*STDIN*"
2139                "*STDOUT*"
2140                "*TTY*"
2141                "ADD-FD-HANDLER"
2142                "ALLOCATE-SYSTEM-MEMORY"
2143                "ALLOW-WITH-INTERRUPTS"
2144                "BEEP"
2145                "BREAKPOINT-ERROR"
2146                "CLOSE-SHARED-OBJECTS"
2147                "DEADLINE-TIMEOUT"
2148                "DEALLOCATE-SYSTEM-MEMORY"
2149                "DECODE-TIMEOUT"
2150                "DECODE-INTERNAL-TIME"
2151                "DEFAULT-INTERRUPT"
2152                "DEFER-DEADLINE"
2153                "DYNAMIC-FOREIGN-SYMBOLS-P"
2154                "DLOPEN-OR-LOSE"
2155                "FROB-DO-BODY"
2156                "ENABLE-INTERRUPT"
2157                "ENSURE-DYNAMIC-FOREIGN-SYMBOL-ADDRESS"
2158                "EXTERN-ALIEN-NAME"
2159                "FD-STREAM" "FD-STREAM-FD" "FD-STREAM-P"
2160                "FIND-DYNAMIC-FOREIGN-SYMBOL-ADDRESS"
2161                "FIND-FOREIGN-SYMBOL-ADDRESS"
2162                "FIND-FOREIGN-SYMBOL-IN-TABLE"
2163                "FOREIGN-SYMBOL-SAP"
2164                "FOREIGN-SYMBOL-ADDRESS"
2165                "FOREIGN-SYMBOL-DATAREF-SAP"
2166                "GET-PAGE-SIZE" "GET-SYSTEM-INFO"
2167                "IGNORE-INTERRUPT"
2168                "IN-INTERRUPTION"
2169                "INTERACTIVE-INTERRUPT"
2170                "INT-SAP"
2171                "INVALIDATE-DESCRIPTOR"
2172                "INVOKE-INTERRUPTION"
2173                "IO-TIMEOUT"
2174                "LIST-DYNAMIC-FOREIGN-SYMBOLS"
2175                "MACRO" "MAKE-FD-STREAM"
2176                "MEMORY-FAULT-ERROR"
2177                "MEMMOVE"
2178                "OS-COLD-INIT-OR-REINIT" "OS-CONTEXT-T" "OUTPUT-RAW-BYTES"
2179                "READ-N-BYTES"
2180                "REMOVE-FD-HANDLER"
2181                "REOPEN-SHARED-OBJECTS"
2182                "SAP+" "SAP-"
2183                "SAP-FOREIGN-SYMBOL"
2184                "SAP-INT"
2185                "SAP-REF-16" "SAP-REF-32" "SAP-REF-64" "SAP-REF-WORD"
2186                "SAP-REF-8"
2187                "SAP-REF-DOUBLE" "SAP-REF-LONG"
2188                "SAP-REF-SAP" "SAP-REF-SINGLE"
2189                "SAP<" "SAP<=" "SAP=" "SAP>" "SAP>="
2190                "SCRUB-CONTROL-STACK" "SERVE-ALL-EVENTS"
2191                "SIGNAL-DEADLINE"
2192                "SERVE-EVENT"
2193                "SIGNED-SAP-REF-16" "SIGNED-SAP-REF-32"
2194                "SIGNED-SAP-REF-64" "SIGNED-SAP-REF-WORD" "SIGNED-SAP-REF-8"
2195                ;; FIXME: STRUCTURE!OBJECT stuff probably belongs in SB!KERNEL.
2196                "STRUCTURE!OBJECT" "STRUCTURE!OBJECT-MAKE-LOAD-FORM"
2197                "SYSTEM-AREA-POINTER" "SYSTEM-AREA-POINTER-P"
2198                "SYSTEM-CONDITION" "SYSTEM-CONDITION-ADDRESS"
2199                "SYSTEM-CONDITION-CONTEXT"
2200                "REINIT-INTERNAL-REAL-TIME"
2201                "SYSTEM-INTERNAL-RUN-TIME"
2202                "UNDEFINED-FOREIGN-SYMBOLS-P"
2203                "UPDATE-LINKAGE-TABLE" "VECTOR-SAP"
2204                "WAIT-UNTIL-FD-USABLE"
2205                "WITH-DEADLINE"
2206                "WITH-FD-HANDLER"
2207                "WITH-INTERRUPTS" "WITH-LOCAL-INTERRUPTS"
2208                "WITH-PINNED-OBJECTS" "WITHOUT-GCING"
2209                "WITHOUT-INTERRUPTS"
2210                "WITH-INTERRUPT-BINDINGS"
2211                "WORDS"))
2213    #s(sb-cold:package-data
2214       :name "SB!UNIX"
2215       :doc
2216       "private: a wrapper layer for SBCL itself to use when talking
2217 with an underlying Unix-y operating system.
2218 This was a public package in CMU CL, but that was different.
2219 CMU CL's UNIX package tried to provide a comprehensive,
2220 stable Unix interface suitable for the end user.
2221 This package only tries to implement what happens to be
2222 needed by the current implementation of SBCL, and makes
2223 no guarantees of interface stability."
2224       :use ("CL" "SB!ALIEN" "SB!EXT" "SB!INT" "SB!SYS")
2225       :export ( ;; wrappers around Unix stuff to give just what Lisp needs
2226                "NANOSLEEP"
2227                "UID-USERNAME"
2228                "UID-HOMEDIR"
2229                "WITH-RESTARTED-SYSCALL"
2230                "SB-MKSTEMP"
2232                ;; stuff with a one-to-one mapping to Unix constructs
2233                "D-INO" "D-NAME" "D-NAMLEN" "D-OFF" "D-RECLEN" "DEV-T" "DIRECT"
2234                "EXECGRP" "EXECOTH" "EXECOWN" "F-DUPFD" "F-GETFD" "F-GETFL"
2235                "F-GETOWN" "F-SETFD" "F-SETFL" "F-SETOWN" "FAPPEND" "FASYNC"
2236                "FCREAT" "FEXCL" "FIONREAD" "FNDELAY" "FTRUNC" "F_OK" "GID-T"
2237                "INO-T" "UNIX-ACCESS" "UNIX-SETITIMER" "UNIX-GETITIMER"
2238                "KBDCGET" "KBDCRESET"
2239                "KBDCRST" "KBDCSET" "KBDCSSTD" "KBDGCLICK" "KBDSCLICK" "KBDSGET"
2240                "L_INCR" "L_SET" "L_XTND" "OFF-T" "O_APPEND" "O_CREAT" "O_EXCL"
2241                "O_RDONLY" "O_RDWR" "O_TRUNC" "O_WRONLY" "POSIX-GETCWD"
2242                "POSIX-GETCWD/" "READGRP" "READOTH" "READOWN" "RLIM-CUR"
2243                "RLIM-MAX" "RU-IDRSS" "RU-INBLOCK" "RU-ISRSS" "RU-IXRSS"
2244                "RU-MAJFLT" "RU-MAXRSS" "RU-MINFLT" "RU-MSGRCV" "RU-MSGSND"
2245                "RU-NIVCSW" "RU-NSIGNALS" "RU-NSWAP" "RU-NVCSW" "RU-OUBLOCK"
2246                "RU-STIME" "RU-UTIME" "RUSAGE_CHILDREN" "RUSAGE_SELF" "RUSEAGE"
2247                "R_OK" "S-IEXEC" "S-IFBLK" "S-IFCHR" "S-IFDIR" "S-IFLNK" "S-IFMT"
2248                "S-IFREG" "S-IFSOCK" "S-IREAD" "S-ISGID" "S-ISUID" "S-ISVTX"
2249                "S-IWRITE" "SAVETEXT" "SB-MKSTEMP" "SC-MASK" "SC-ONSTACK"
2250                "SETUIDEXEC" "SG-ERASE" "SG-FLAGS" "SG-ISPEED" "SG-KILL"
2251                "SG-OSPEED" "SGTTYB" "SIZE-T" "ST-ATIME" "ST-BLKSIZE" "ST-BLOCKS"
2252                "ST-CTIME" "ST-DEV" "ST-GID" "ST-MODE" "ST-MTIME" "ST-NLINK"
2253                "ST-RDEV" "ST-SIZE" "ST-UID" "STAT" "TERMINAL-SPEEDS" "TIME-T"
2254                "TIMEVAL" "TIMEZONE" "TIOCFLUSH" "TIOCGETC" "TIOCGETP" "TIOCGLTC"
2255                "TIOCGPGRP" "TIOCGWINSZ" "TIOCNOTTY" "TIOCSETC" "TIOCSETP"
2256                "TIOCSLTC" "TIOCSPGRP" "TIOCSWINSZ" "TV-SEC" "TV-USEC"
2257                "TZ-DSTTIME" "TZ-MINUTESWEST" "UID-T" "UNIX-CLOSE"
2258                "UNIX-DUP""UNIX-EXIT" "UNIX-FILE-MODE" "UNIX-FSTAT"
2259                "UNIX-GETHOSTNAME" "UNIX-GETPID" "UNIX-GETRUSAGE"
2260                "UNIX-GETTIMEOFDAY" "UNIX-GETUID" "UNIX-GID" "UNIX-IOCTL"
2261                "UNIX-ISATTY" "UNIX-LSEEK" "UNIX-LSTAT" "UNIX-MKDIR"
2262                "UNIX-OPEN" "UNIX-PATHNAME" "UNIX-PID"
2263                "UNIX-PIPE" "UNIX-READ" "UNIX-READLINK" "UNIX-REALPATH"
2264                "UNIX-RENAME" "UNIX-SELECT" "UNIX-STAT" "UNIX-UID"
2265                "UNIX-UNLINK" "UNIX-WRITE"
2266                "WINSIZE"
2267                "WRITEGRP" "WRITEOTH" "WRITEOWN" "WS-COL" "WS-ROW" "WS-XPIXEL"
2268                "WS-YPIXEL" "WNOHANG" "WSTOPPED" "WUNTRACED" "W_OK" "X_OK"
2270                ;; signals
2271                "SIGALRM" "SIGBUS" "SIGCHLD" "SIGCONT" "SIGEMT" "SIGFPE"
2272                "SIGHUP" "SIGILL" "SIGINT" "SIGIO" "SIGIOT" "SIGKILL"
2273                "SIGPIPE" "SIGPROF" "SIGQUIT" "SIGSEGV" "SIGSTOP" "SIGSYS"
2274                "SIGTERM" "SIGTRAP" "SIGTSTP" "SIGTTIN" "SIGTTOU" "SIGURG"
2275                "SIGUSR1" "SIGUSR2" "SIGVTALRM" "SIGWAITING" "SIGWINCH"
2276                "SIGXCPU" "SIGXFSZ"
2278                ;; errors
2279                "E2BIG" "EADDRINUSE" "EADDRNOTAVAIL" "EAFNOSUPPORT"
2280                "EAGAIN" "EALREADY" "EBADF" "EBUSY" "ECHILD" "ECONNABORTED"
2281                "ECONNREFUSED" "ECONNRESET" "EDEADLK" "EDESTADDRREQ" "EDOM"
2282                "EDQUOT" "EEXIST" "EFAULT" "EFBIG" "EHOSTDOWN"
2283                "EHOSTUNREACH" "EINPROGRESS" "EINTR" "EINVAL" "EIO"
2284                "EISCONN" "EISDIR" "ELOCAL" "ELOOP" "EMFILE" "EMLINK"
2285                "EMSGSIZE" "ENAMETOOLONG" "ENETDOWN" "ENETRESET"
2286                "ENETUNREACH" "ENFILE" "ENOBUFS" "ENODEV" "ENOENT"
2287                "ENOEXEC" "ENOMEM" "ENOPROTOOPT" "ENOSPC" "ENOTBLK"
2288                "ENOTCONN" "ENOTEMPTY" "ENOTSOCK" "ENOTTY" "ENXIO"
2289                "EOPNOTSUPP" "EPERM" "EPFNOSUPPORT" "EPIPE" "EPROCLIM"
2290                "EPROTONOSUPPORT" "EPROTOTYPE" "ERANGE" "EREMOTE"
2291                "ERESTART" "EROFS" "ESHUTDOWN" "ESOCKTNOSUPPORT" "ESPIPE"
2292                "ESRCH" "ESUCCESS" "ETIMEDOUT" "ETOOMANYREFS" "ETXTBSY"
2293                "EUSERS" "EVICEERR" "EVICEOP" "EWOULDBLOCK" "EXDEV"
2295                "FD-ISSET" "FD-SET" "LTCHARS" "UNIX-FAST-SELECT"
2296                "UNIX-FILE-KIND" "UNIX-KILL" "CODESET"
2297                "TCSETPGRP" "FD-ZERO" "FD-CLR" "CHECK" "UNIX-RESOLVE-LINKS"
2298                "FD-SETSIZE" "TCGETPGRP" "UNIX-FAST-GETRUSAGE"
2299                "UNIX-KILLPG"
2300                "TIOCSIGSEND"
2301                "C-IFLAG" "C-LFLAG" "C-OFLAG"
2302                "C-CFLAG" "TCSAFLUSH" "C-CC" "SIOCSPGRP" "TERMIOS"
2303                "O_NDELAY" "O_NOCTTY"
2304                "O_NONBLOCK" "TCSANOW" "TCSADRAIN" "TCIFLUSH" "TCOFLUSH"
2305                "TCIOFLUSH" "TTY-IGNBRK" "TTY-BRKINT" "TTY-IGNPAR" "TTY-PARMRK"
2306                "TTY-INPCK" "TTY-ISTRIP" "TTY-INLCR" "TTY-IGNCR" "TTY-ICRNL"
2307                "TTY-IUCLC" "TTY-IXON" "TTY-IXANY" "TTY-IXOFF" "TTY-IENQAK"
2308                "TTY-IMAXBEL" "TTY-OPOST" "TTY-OLCUC" "TTY-ONLCR" "TTY-OCRNL"
2309                "TTY-ONOCR" "TTY-ONLRET" "TTY-OFILL" "TTY-OFDEL" "TTY-ISIG"
2310                "TTY-ICANON" "TTY-XCASE" "TTY-ECHO" "TTY-ECHOE" "TTY-ECHOK"
2311                "TTY-ECHONL" "TTY-NOFLSH" "TTY-IEXTEN" "TTY-TOSTOP" "TTY-ECHOCTL"
2312                "TTY-ECHOPRT" "TTY-ECHOKE"  "TTY-DEFECHO" "TTY-FLUSHO"
2313                "TTY-PENDIN" "TTY-CSTOPB" "TTY-CREAD" "TTY-PARENB" "TTY-PARODD"
2314                "TTY-HUPCL" "TTY-CLOCAL" "RCV1EN" "XMT1EN" "TTY-LOBLK" "VINTR"
2315                "VQUIT" "VERASE" "VKILL" "VEOF" "VEOL" "VEOL2" "TTY-CBAUD"
2316                "TTY-CSIZE" "TTY-CS5" "TTY-CS6" "TTY-CS7" "TTY-CS8" "VMIN" "VTIME"
2317                "VSUSP" "VSTART" "VSTOP" "VDSUSP"
2318                #!+(or svr4 bsd linux) "O_NDELAY"
2319                #!+(or svr4 linux)
2320                ("EADDRINUSE"
2321                 "EADDRNOTAVAIL" "EADV"
2322                 "EAFNOSUPPORT" "EALREADY" "EBADE" "EBADFD"
2323                 "EBADMSG" "EBADR" "EBADRQC"
2324                 "EBADSLT" "EBFONT" #!+svr4 "ECANCELED"
2325                 "ECHRNG" "ECOMM" "ECONNABORTED"
2326                 "ECONNREFUSED" "ECONNRESET" "EDEADLK"
2327                 "EDEADLOCK" "EDESTADDRREQ" #!+linux "EDOTDOT"
2328                 #!+linux "EDQUOT" "EHOSTDOWN" "EHOSTUNREACH"
2329                 "EIDRM" "EILSEQ" "EINPROGRESS"
2330                 "EISCONN" #!+linux "EISNAM" "EL2HLT"
2331                 "EL2NSYNC" "EL3HLT" "EL3RST" "ELIBACC"
2332                 "ELIBBAD" "ELIBEXEC" "ELIBMAX" "ELIBSCN"
2333                 "ELNRNG" "ELOOP" "EMSGSIZE" "EMULTIHOP"
2334                 "ENAMETOOLONG" #!+linux "ENAVAIL"
2335                 "ENETDOWN" "ENETRESET" "ENETUNREACH" "ENOANO"
2336                 "ENOBUFS" "ENOCSI" "ENODATA" "ENOLCK"
2337                 "ENOLINK" "ENOMSG" "ENONET" "ENOPKG"
2338                 "ENOPROTOOPT" "ENOSR" "ENOSTR" "ENOSYS"
2339                 "ENOTCONN" "ENOTEMPTY" #!+linux "ENOTNAM"
2340                 "ENOTSOCK" #!+svr4 "ENOTSUP" "ENOTUNIQ"
2341                 "EOPNOTSUPP" "EOVERFLOW" "EPFNOSUPPORT"
2342                 "EPROTO" "EPROTONOSUPPORT" "EPROTOTYPE"
2343                 "EREMCHG" "EREMOTE" #!+linux "EREMOTEIO"
2344                 "ERESTART" "ESHUTDOWN" "ESOCKTNOSUPPORT"
2345                 "ESRMNT" "ESTALE" "ESTRPIPE" "ETIME"
2346                 "ETIMEDOUT" "ETOOMANYREFS" #!+linux "EUCLEAN"
2347                 "EUNATCH" "EUSERS" "EWOULDBLOCK" "EXFULL")))
2349    #s(sb-cold:package-data
2350       :name "SB!VM"
2351       :doc
2352       "internal: the default place to hide information about the hardware and data
2353 structure representations"
2354       :use ("CL" "SB!ALIEN" "SB!ALIEN-INTERNALS" "SB!ASSEM" "SB!C"
2355                  "SB!EXT" "SB!FASL" "SB!INT" "SB!KERNEL" "SB!SYS" "SB!UNIX")
2356       :export ("*ASSEMBLY-UNIT-LENGTH*"
2357                "*PRIMITIVE-OBJECTS*"
2358                "AFTER-BREAKPOINT-TRAP"
2359                "*ALLOC-SIGNAL*"
2360                "ANY-REG-SC-NUMBER" "ARRAY-DATA-SLOT" "ARRAY-DIMENSIONS-OFFSET"
2361                "ARRAY-DISPLACED-P-SLOT" "ARRAY-DISPLACEMENT-SLOT"
2362                "ARRAY-ELEMENTS-SLOT" "ARRAY-FILL-POINTER-P-SLOT"
2363                "ARRAY-FILL-POINTER-SLOT" "ATOMIC-FLAG"
2364                "CHARACTER-REG-SC-NUMBER"
2365                "CHARACTER-STACK-SC-NUMBER" "CHARACTER-WIDETAG"
2366                "BIGNUM-DIGITS-OFFSET" "BIGNUM-WIDETAG" "BINDING-SIZE"
2367                "BINDING-SYMBOL-SLOT" "BINDING-VALUE-SLOT" "BREAKPOINT-TRAP"
2368                "N-BYTE-BITS" "BYTE-REG-SC-NUMBER"
2369                "CATCH-BLOCK-CURRENT-CODE-SLOT"
2370                "CATCH-BLOCK-CURRENT-CONT-SLOT" "CATCH-BLOCK-CURRENT-UWP-SLOT"
2371                "CATCH-BLOCK-ENTRY-PC-SLOT" "CATCH-BLOCK-PREVIOUS-CATCH-SLOT"
2372                "CATCH-BLOCK-SC-NUMBER" "CATCH-BLOCK-SIZE" "CATCH-BLOCK-SIZE-SLOT"
2373                "CATCH-BLOCK-TAG-SLOT" "CERROR-TRAP"
2374                "CLOSURE-FUN-SLOT"
2375                "CLOSURE-HEADER-WIDETAG" "CLOSURE-INFO-OFFSET"
2376                "CODE-CODE-SIZE-SLOT" "CODE-CONSTANTS-OFFSET"
2377                "CODE-DEBUG-INFO-SLOT" "CODE-ENTRY-POINTS-SLOT"
2378                "CODE-HEADER-WIDETAG"
2379                "CODE-TRACE-TABLE-OFFSET-SLOT" "COMPLEX-ARRAY-WIDETAG"
2380                "COMPLEX-BIT-VECTOR-WIDETAG" "COMPLEX-DOUBLE-FLOAT-FILLER-SLOT"
2381                "COMPLEX-DOUBLE-FLOAT-IMAG-SLOT" "COMPLEX-DOUBLE-FLOAT-REAL-SLOT"
2382                "COMPLEX-DOUBLE-FLOAT-SIZE" "COMPLEX-DOUBLE-FLOAT-WIDETAG"
2383                "COMPLEX-DOUBLE-REG-SC-NUMBER" "COMPLEX-DOUBLE-STACK-SC-NUMBER"
2384                "COMPLEX-IMAG-SLOT" "COMPLEX-REAL-SLOT"
2385                #!+long-float "COMPLEX-LONG-FLOAT-IMAG-SLOT"
2386                #!+long-float "COMPLEX-LONG-FLOAT-REAL-SLOT"
2387                #!+long-float "COMPLEX-LONG-FLOAT-SIZE"
2388                #!+long-float "COMPLEX-LONG-FLOAT-WIDETAG"
2389                #!+long-float "COMPLEX-LONG-REG-SC-NUMBER"
2390                #!+long-float "COMPLEX-LONG-STACK-SC-NUMBER"
2391                "COMPLEX-SINGLE-FLOAT-IMAG-SLOT" "COMPLEX-SINGLE-FLOAT-REAL-SLOT"
2392                "COMPLEX-SINGLE-FLOAT-SIZE" "COMPLEX-SINGLE-FLOAT-WIDETAG"
2393                "COMPLEX-SINGLE-REG-SC-NUMBER" "COMPLEX-SINGLE-STACK-SC-NUMBER"
2394                "COMPLEX-SIZE" "COMPLEX-BASE-STRING-WIDETAG"
2395                #!+sb-unicode "COMPLEX-CHARACTER-STRING-WIDETAG"
2396                "COMPLEX-WIDETAG"
2397                "COMPLEX-VECTOR-NIL-WIDETAG"
2398                "COMPLEX-VECTOR-WIDETAG" "CONS-CAR-SLOT" "CONS-CDR-SLOT"
2399                "CONS-SIZE" "CONSTANT-SC-NUMBER"
2400                "CONTEXT-FLOATING-POINT-MODES" "CONTEXT-FLOAT-REGISTER"
2401                "CONTEXT-PC" "CONTEXT-REGISTER"
2402                "CONTROL-STACK-SC-NUMBER" "COUNT-NO-OPS"
2403                "*CURRENT-CATCH-BLOCK*"
2404                "CURRENT-FLOAT-TRAP" "DEFINE-FOR-EACH-PRIMITIVE-OBJECT"
2405                "DESCRIPTOR-REG-SC-NUMBER" "DESCRIPTOR-VS-NON-DESCRIPTOR-STORAGE"
2406                "DOUBLE-FLOAT-EXPONENT-BYTE" "DOUBLE-FLOAT-BIAS"
2407                "DOUBLE-FLOAT-DIGITS" "DOUBLE-FLOAT-EXPONENT-BYTE"
2408                "DOUBLE-FLOAT-FILLER-SLOT" "DOUBLE-FLOAT-HIDDEN-BIT"
2409                "DOUBLE-FLOAT-NORMAL-EXPONENT-MAX"
2410                "DOUBLE-FLOAT-NORMAL-EXPONENT-MIN" "DOUBLE-FLOAT-SIGNIFICAND-BYTE"
2411                "DOUBLE-FLOAT-SIZE" "DOUBLE-FLOAT-TRAPPING-NAN-BIT"
2412                "DOUBLE-FLOAT-WIDETAG" "DOUBLE-FLOAT-VALUE-SLOT"
2413                "DOUBLE-INT-CARG-REG-SC-NUMBER" "DOUBLE-REG-SC-NUMBER"
2414                "DOUBLE-STACK-SC-NUMBER"
2415                "ERROR-TRAP" "EVEN-FIXNUM-LOWTAG"
2416                "EXPORTED-STATIC-SYMBOLS"
2417                "FDEFN-FUN-SLOT" "FDEFN-NAME-SLOT" "FDEFN-RAW-ADDR-SLOT"
2418                "FDEFN-SIZE" "FDEFN-WIDETAG" "FIXNUMIZE"
2419                "FIXNUM-TAG-MASK"
2420                "FIXUP-CODE-OBJECT" "FLOAT-DENORMAL-TRAP-BIT"
2421                "FLOAT-DIVIDE-BY-ZERO-TRAP-BIT"
2422                "FLOAT-IMPRECISE-TRAP-BIT" "FLOAT-INVALID-TRAP-BIT"
2423                "FLOAT-OVERFLOW-TRAP-BIT" "FLOAT-SIGN-SHIFT"
2424                "FLOAT-UNDERFLOW-TRAP-BIT" "FLOATING-POINT-MODES"
2425                "FORWARDING-POINTER-TYPE"
2426                "FP-CONSTANT-SC-NUMBER"
2427                "FP-DOUBLE-ZERO-SC-NUMBER" "FP-SINGLE-ZERO-SC-NUMBER"
2428                "FUNCALLABLE-INSTANCE-TRAMPOLINE-SLOT"
2429                "FUNCALLABLE-INSTANCE-HEADER-WIDETAG"
2430                "FUNCALLABLE-INSTANCE-INFO-OFFSET"
2431                "SIMPLE-FUN-ARGLIST-SLOT" "SIMPLE-FUN-CODE-OFFSET"
2432                "FUN-END-BREAKPOINT-TRAP"
2433                "SIMPLE-FUN-HEADER-CODE-OFFSET"
2434                "SIMPLE-FUN-HEADER-NEXT-SLOT"
2435                "SIMPLE-FUN-HEADER-SELF-SLOT"
2436                "SIMPLE-FUN-HEADER-WIDETAG"
2437                "SIMPLE-FUN-HEADER-TYPE-SLOT"
2438                "SIMPLE-FUN-NAME-SLOT"
2439                "SIMPLE-FUN-NEXT-SLOT"
2440                "FUN-POINTER-LOWTAG"
2441                "SIMPLE-FUN-SELF-SLOT"
2442                "SIMPLE-FUN-TYPE-SLOT"
2443                "GENCGC-PAGE-SIZE"
2444                #!+ppc "PSEUDO-ATOMIC-INTERRUPTED-FLAG"
2445                #!+ppc "PSEUDO-ATOMIC-FLAG"
2446                "GENESIS" "HALT-TRAP" "IGNORE-ME-SC-NUMBER"
2447                "IMMEDIATE-CHARACTER-SC-NUMBER" "IMMEDIATE-SAP-SC-NUMBER"
2448                "IMMEDIATE-SC-NUMBER"
2449                "INSTANCE-HEADER-WIDETAG" "INSTANCE-POINTER-LOWTAG"
2450                "INSTANCE-SLOTS-OFFSET" "INSTANCE-USAGE"
2451                "INTERIOR-REG-SC-NUMBER" "INTERNAL-ERROR-ARGS"
2452                "INTERRUPTED-FLAG" "LIST-ALLOCATED-OBJECTS" "LIST-POINTER-LOWTAG"
2453                ;; FIXME: Possibly these other parameters (see
2454                ;; compiler/{x86,sparc}/parms.lisp) should be defined
2455                ;; conditionally on #!+LONG-FLOAT)
2456                "LONG-FLOAT-BIAS" "LONG-FLOAT-DIGITS" "LONG-FLOAT-EXPONENT-BYTE"
2457                "LONG-FLOAT-HIDDEN-BIT" "LONG-FLOAT-NORMAL-EXPONENT-MAX"
2458                "LONG-FLOAT-NORMAL-EXPONENT-MIN" "LONG-FLOAT-SIGNIFICAND-BYTE"
2459                #!+long-float "LONG-FLOAT-SIZE"
2460                "LONG-FLOAT-TRAPPING-NAN-BIT"
2461                #!+long-float "LONG-FLOAT-WIDETAG"
2462                #!+long-float "LONG-FLOAT-VALUE-SLOT"
2463                #!+long-float "LONG-REG-SC-NUMBER"
2464                #!+long-float "LONG-STACK-SC-NUMBER"
2465                "LOWTAG-LIMIT" "LOWTAG-MASK"
2466                "LRA-SAVE-OFFSET"
2467                #!+(and sb-thread sb-lutex) "LUTEX-WIDETAG"
2468                "MEMORY-USAGE" "MOST-POSITIVE-COST"
2469                "N-LOWTAG-BITS"
2470                "N-FIXNUM-TAG-BITS"
2471                "N-POSITIVE-FIXNUM-BITS"
2472                "NEGATIVE-IMMEDIATE-SC-NUMBER"
2473                "NFP-SAVE-OFFSET"
2474                "NON-DESCRIPTOR-REG-SC-NUMBER"
2475                "NULL-SC-NUMBER"
2476                "OBJECT-NOT-LIST-TRAP" "OBJECT-NOT-INSTANCE-TRAP"
2477                "OCFP-SAVE-OFFSET"
2478                "ODD-FIXNUM-LOWTAG"
2479                "OFFSET-STATIC-SYMBOL"
2480                "OTHER-IMMEDIATE-0-LOWTAG"
2481                "OTHER-IMMEDIATE-1-LOWTAG"
2482                ;; FIXME: 32/64-bit issues
2483                "OTHER-IMMEDIATE-2-LOWTAG"
2484                "OTHER-IMMEDIATE-3-LOWTAG"
2485                "OTHER-POINTER-LOWTAG"
2486                "PAD-DATA-BLOCK" "PENDING-INTERRUPT-TRAP"
2487                "PRIMITIVE-OBJECT" "PRIMITIVE-OBJECT-WIDETAG"
2488                "PRIMITIVE-OBJECT-LOWTAG" "PRIMITIVE-OBJECT-NAME"
2489                "PRIMITIVE-OBJECT-OPTIONS" "PRIMITIVE-OBJECT-P"
2490                "PRIMITIVE-OBJECT-SIZE" "PRIMITIVE-OBJECT-SLOTS"
2491                "PRIMITIVE-OBJECT-VARIABLE-LENGTH-P" "PRINT-ALLOCATED-OBJECTS"
2492                "RANDOM-IMMEDIATE-SC-NUMBER" "RATIO-DENOMINATOR-SLOT"
2493                "RATIO-NUMERATOR-SLOT" "RATIO-SIZE" "RATIO-WIDETAG"
2494                "*READ-ONLY-SPACE-FREE-POINTER*"
2495                "REGISTER-SAVE-PENALTY" "RETURN-PC-HEADER-WIDETAG"
2496                "RETURN-PC-RETURN-POINT-OFFSET" "RETURN-PC-SAVE-OFFSET"
2497                "SAETP-CTYPE" "SAETP-INITIAL-ELEMENT-DEFAULT"
2498                "SAETP-N-BITS" "SAETP-TYPECODE" "SAETP-PRIMITIVE-TYPE-NAME"
2499                "SAETP-N-PAD-ELEMENTS" "SAETP-SPECIFIER"
2500                "SAETP-COMPLEX-TYPECODE" "SAETP-IMPORTANCE"
2501                "*SPECIALIZED-ARRAY-ELEMENT-TYPE-PROPERTIES*"
2502                "SANCTIFY-FOR-EXECUTION"
2503                "SAP-POINTER-SLOT" "SAP-REG-SC-NUMBER" "SAP-SIZE"
2504                "SAP-STACK-SC-NUMBER" "SAP-WIDETAG"
2505                "SIGFPE-HANDLER" "SIGNED-REG-SC-NUMBER" "SIGNED-STACK-SC-NUMBER"
2506                "SIGNED-WORD"
2507                "SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-WIDETAG"
2508                #!+long-float "SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-WIDETAG"
2509                "SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-WIDETAG"
2510                "SIMPLE-ARRAY-DOUBLE-FLOAT-WIDETAG"
2511                #!+long-float "SIMPLE-ARRAY-LONG-FLOAT-WIDETAG"
2512                "SIMPLE-ARRAY-NIL-WIDETAG"
2513                "SIMPLE-ARRAY-SINGLE-FLOAT-WIDETAG"
2514                "SIMPLE-ARRAY-WIDETAG"
2515                "SIMPLE-ARRAY-UNSIGNED-BYTE-15-WIDETAG"
2516                "SIMPLE-ARRAY-UNSIGNED-BYTE-16-WIDETAG"
2517                "SIMPLE-ARRAY-UNSIGNED-BYTE-2-WIDETAG"
2518                ;; FIXME: 32/64-bit issues
2519                "SIMPLE-ARRAY-UNSIGNED-BYTE-29-WIDETAG"
2520                "SIMPLE-ARRAY-UNSIGNED-BYTE-31-WIDETAG"
2521                "SIMPLE-ARRAY-UNSIGNED-BYTE-32-WIDETAG"
2522                ;; FIXME: 32/64-bit issues
2523                "SIMPLE-ARRAY-UNSIGNED-BYTE-60-WIDETAG"
2524                "SIMPLE-ARRAY-UNSIGNED-BYTE-63-WIDETAG"
2525                "SIMPLE-ARRAY-UNSIGNED-BYTE-64-WIDETAG"
2526                "SIMPLE-ARRAY-UNSIGNED-BYTE-4-WIDETAG"
2527                "SIMPLE-ARRAY-UNSIGNED-BYTE-7-WIDETAG"
2528                "SIMPLE-ARRAY-UNSIGNED-BYTE-8-WIDETAG"
2529                "SIMPLE-ARRAY-SIGNED-BYTE-16-WIDETAG"
2530                ;; FIXME: 32/64-bit issues
2531                "SIMPLE-ARRAY-SIGNED-BYTE-30-WIDETAG"
2532                "SIMPLE-ARRAY-SIGNED-BYTE-32-WIDETAG"
2533                ;; FIXME: 32/64-bit issues
2534                "SIMPLE-ARRAY-SIGNED-BYTE-61-WIDETAG"
2535                "SIMPLE-ARRAY-SIGNED-BYTE-64-WIDETAG"
2536                "SIMPLE-ARRAY-SIGNED-BYTE-8-WIDETAG"
2537                "SIMPLE-BIT-VECTOR-WIDETAG"
2538                "SIMPLE-BASE-STRING-WIDETAG"
2539                #!+sb-unicode "SIMPLE-CHARACTER-STRING-WIDETAG"
2540                "SIMPLE-VECTOR-WIDETAG" "SINGLE-FLOAT-BIAS"
2541                "SINGLE-FLOAT-DIGITS" "SINGLE-FLOAT-EXPONENT-BYTE"
2542                "SINGLE-FLOAT-HIDDEN-BIT" "SINGLE-FLOAT-NORMAL-EXPONENT-MAX"
2543                "SINGLE-FLOAT-NORMAL-EXPONENT-MIN" "SINGLE-FLOAT-SIGNIFICAND-BYTE"
2544                "SINGLE-FLOAT-SIZE" "SINGLE-FLOAT-TRAPPING-NAN-BIT"
2545                "SINGLE-FLOAT-WIDETAG" "SINGLE-FLOAT-VALUE-SLOT"
2546                "SINGLE-INT-CARG-REG-SC-NUMBER"
2547                "SINGLE-REG-SC-NUMBER" "SINGLE-STACK-SC-NUMBER"
2548                "SINGLE-STEP-AROUND-TRAP"
2549                "SINGLE-STEP-BEFORE-TRAP"
2550                "SINGLE-VALUE-RETURN-BYTE-OFFSET" "SLOT-DOCS"
2551                "SLOT-LENGTH" "SLOT-NAME" "SLOT-OFFSET" "SLOT-OPTIONS"
2552                "SLOT-REST-P" "*STATIC-FUNS*" "STATIC-FUN-OFFSET"
2553                "STATIC-SYMBOL-OFFSET" "STATIC-SYMBOL-P"
2554                "*STATIC-SPACE-FREE-POINTER*" "*STATIC-SYMBOLS*"
2555                "STRUCTURE-USAGE"
2556                "SYMBOL-HASH-SLOT" "SYMBOL-HEADER-WIDETAG" "SYMBOL-NAME-SLOT"
2557                "SYMBOL-PACKAGE-SLOT" "SYMBOL-PLIST-SLOT"
2558                "SYMBOL-SIZE" "SYMBOL-UNUSED-SLOT" "SYMBOL-VALUE-SLOT"
2559                "*BINDING-STACK-START*"
2560                "*CONTROL-STACK-START*" "*CONTROL-STACK-END*"
2561                "CONTROL-STACK-POINTER-VALID-P"
2562                "DYNAMIC-SPACE-START" "DYNAMIC-SPACE-END"
2563                #!+c-stack-is-control-stack "ALTERNATE-SIGNAL-STACK-START"
2564                #!-gencgc "DYNAMIC-0-SPACE-START"
2565                #!-gencgc "DYNAMIC-0-SPACE-END"
2566                #!-gencgc "DYNAMIC-1-SPACE-START"
2567                #!-gencgc "DYNAMIC-1-SPACE-END"
2568                "READ-ONLY-SPACE-START" "READ-ONLY-SPACE-END"
2569                "TARGET-BYTE-ORDER" "TARGET-HEAP-ADDRESS-SPACE"
2570                "STATIC-SPACE-START" "STATIC-SPACE-END"
2571                #!+linkage-table "LINKAGE-TABLE-SPACE-START"
2572                #!+linkage-table "LINKAGE-TABLE-SPACE-END"
2573                #!+linkage-table "LINKAGE-TABLE-ENTRY-SIZE"
2574                "TLS-SIZE"
2575                "TRACE-TABLE-CALL-SITE"
2576                "TRACE-TABLE-FUN-EPILOGUE" "TRACE-TABLE-FUN-PROLOGUE"
2577                "TRACE-TABLE-NORMAL" "N-WIDETAG-BITS" "WIDETAG-MASK"
2578                "UNBOUND-MARKER-WIDETAG"
2579                "NO-TLS-VALUE-MARKER-WIDETAG"
2580                "UNSIGNED-IMMEDIATE-SC-NUMBER"
2581                "UNSIGNED-REG-SC-NUMBER" "UNSIGNED-STACK-SC-NUMBER"
2582                "UNWIND-BLOCK-CURRENT-CODE-SLOT" "UNWIND-BLOCK-CURRENT-CONT-SLOT"
2583                "UNWIND-BLOCK-CURRENT-UWP-SLOT" "UNWIND-BLOCK-ENTRY-PC-SLOT"
2584                "UNWIND-BLOCK-SIZE" "VALUE-CELL-HEADER-WIDETAG" "VALUE-CELL-SIZE"
2585                "VALUE-CELL-VALUE-SLOT" "VECTOR-DATA-OFFSET" "VECTOR-LENGTH-SLOT"
2586                "VECTOR-MUST-REHASH-SUBTYPE" "VECTOR-NORMAL-SUBTYPE"
2587                "VECTOR-VALID-HASHING-SUBTYPE"
2588                "WEAK-POINTER-BROKEN-SLOT" "WEAK-POINTER-NEXT-SLOT"
2589                "WEAK-POINTER-SIZE" "WEAK-POINTER-WIDETAG"
2590                "WEAK-POINTER-VALUE-SLOT"
2591                "WORD" "N-WORD-BITS" "N-WORD-BYTES" "N-MACHINE-WORD-BITS"
2592                "WORD-REG-SC-NUMBER" "WORD-SHIFT"
2593                #!+win32 "CONTEXT-RESTORE-TRAP"
2594                "ZERO-SC-NUMBER"))
2596    #s(sb-cold:package-data
2597       :name "SB!WALKER"
2598       :doc "internal: a code walker used by PCL"
2599       :use ("CL" "SB!INT" "SB!EXT")
2600       :export ("DEFINE-WALKER-TEMPLATE"
2601                "WALK-FORM"
2602                "*WALK-FORM-EXPAND-MACROS-P*"
2603                "VAR-LEXICAL-P" "VAR-SPECIAL-P"
2604                "VAR-GLOBALLY-SPECIAL-P"
2605                "*VAR-DECLARATIONS*" "VAR-DECLARATION"
2607                ;; These were exported from the original PCL version of this
2608                ;; package, but aren't used in SBCL.
2609                ;;"NESTED-WALK-FORM" "MACROEXPAND-ALL"
2610                ))
2612    #!+sb-eval
2613    #s(sb-cold:package-data
2614       :name "SB!EVAL"
2615       :doc "internal: the evaluator implementation used to execute code without compiling it."
2616       :use ("CL" "SB!KERNEL" "SB!EXT")
2617       :reexport ("*EVAL-CALLS*")
2618       :export ("INTERPRETED-FUNCTION"
2619                "INTERPRETED-FUNCTION-P"
2620                "INTERPRETED-FUNCTION-NAME"
2621                "INTERPRETED-FUNCTION-LAMBDA-LIST"
2622                "INTERPRETED-FUNCTION-DOCUMENTATION"
2623                "INTERPRETED-FUNCTION-BODY"
2624                "INTERPRETED-FUNCTION-SOURCE-LOCATION"
2625                "EVAL-IN-ENVIRONMENT"
2626                "MAKE-NULL-ENVIRONMENT"
2627                "EVAL-IN-NATIVE-ENVIRONMENT"
2628                "PREPARE-FOR-COMPILE"
2629                "COUNT-EVAL-CALLS"
2630                "*EVAL-LEVEL*"))
2632    #!+win32
2633    #s(sb-cold:package-data
2634       :name "SB!WIN32"
2635       :doc "private: a wrapper layer for Win32 functions needed by
2636 SBCL itself"
2637       :use ("CL" "SB!ALIEN" "SB!EXT" "SB!INT" "SB!SYS")
2638       :export ("BOOL"
2639                "DWORD" "FD-CLEAR-INPUT" "FD-LISTEN"
2640                "FLUSH-CONSOLE-INPUT-BUFFER" "FORMAT-MESSAGE"
2641                "GET-LAST-ERROR" "GET-OSFHANDLE" "HANDLE"
2642                "HANDLE-CLEAR-INPUT" "HANDLE-LISTEN" "INT-PTR"
2643                "INVALID-HANDLE" "MILLISLEEP" "PEEK-CONSOLE-INPUT"
2644                "PEEK-NAMED-PIPE" "READ-FILE" "WRITE-FILE"
2645                "WITH-PROCESS-TIMES" "GET-VERSION-EX")))