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