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