;;;; -*- Lisp -*- ;;;; the specifications of target packages, except for a few things ;;;; which are handled elsewhere by other mechanisms: ;;;; * any SHADOWing and nickname hackery; ;;;; * the standard, non-SBCL-specific packages COMMON-LISP, ;;;; COMMON-LISP-USER, and KEYWORD. ;;;; ;;;; The packages are named SB!FOO here and elsewhere in ;;;; cross-compilation, in order to avoid collision with possible ;;;; corresponding SB-FOO packages in the cross-compilation host. ;;;; They're renamed to SB-FOO later, after we've departed from the xc ;;;; mothership and the danger of namespace collision is past. ;;;; This software is part of the SBCL system. See the README file for ;;;; more information. ;;;; ;;;; This software is derived from the CMU CL system, which was ;;;; written at Carnegie Mellon University and released into the ;;;; public domain. The software is in the public domain and is ;;;; provided with absolutely no warranty. See the COPYING and CREDITS ;;;; files for more information. (#s(sb-cold:package-data :name "SB!ALIEN" :doc "public: the ALIEN foreign function interface (If you're porting CMU CL code, note that this package corresponds roughly to a union of the packages ALIEN and C-CALL at the time of the SBCL fork. SB-C-CALL is a deprecated nickname to help ease the transition from older versions of SBCL which maintained the CMU-CL-style split into two packages.)" :use ("CL" "SB!EXT" "SB!INT" "SB!SYS" "SB!ALIEN-INTERNALS") :reexport ("ARRAY" "BOOLEAN" "CHAR" "DOUBLE-FLOAT" "FLOAT" "FUNCTION" "INTEGER" "LONG-FLOAT" "SINGLE-FLOAT" ;; FIXME: Do we really want to reexport ;; SYSTEM-AREA-POINTER here? Why? "SYSTEM-AREA-POINTER" "UNION" "VALUES" "*") :export ("ADDR" "ALIEN" "ALIEN-FUNCALL" "ALIEN-SAP" "ALIEN-SIZE" "CAST" "C-STRING" "DEFINE-ALIEN-ROUTINE" "DEFINE-ALIEN-TYPE" "DEFINE-ALIEN-VARIABLE" ;; FIXME: These old names don't match the DEFFOO - vs. - ;; DEFINE-FOO convention used in the ANSI spec, and so ;; were deprecated in sbcl-0.7.0. After a year or so ;; they can go away completely. "DEF-ALIEN-ROUTINE" "DEF-ALIEN-TYPE" "DEF-ALIEN-VARIABLE" "DEREF" "DOUBLE" "ENUM" "EXTERN-ALIEN" "FREE-ALIEN" "GET-ERRNO" "INT" "LOAD-FOREIGN" "LOAD-1-FOREIGN" "LONG" "MAKE-ALIEN" "NULL-ALIEN" "SAP-ALIEN" "SHORT" "SIGNED" "SLOT" "STRUCT" "UNSIGNED" "UNSIGNED-CHAR" "UNSIGNED-INT" "UNSIGNED-LONG" "UNSIGNED-SHORT" "VOID" "WITH-ALIEN")) #s(sb-cold:package-data :name "SB!ALIEN-INTERNALS" :doc "private: stuff for implementing ALIENs and friends" :use ("CL") :export ("%CAST" "%DEREF-ADDR" "%HEAP-ALIEN" "%HEAP-ALIEN-ADDR" "%LOCAL-ALIEN-ADDR" "%LOCAL-ALIEN-FORCED-TO-MEMORY-P" "%SAP-ALIEN" "%SET-DEREF" "%SET-HEAP-ALIEN" "%SET-LOCAL-ALIEN" "%SET-SLOT" "%SLOT-ADDR" "*VALUES-TYPE-OKAY*" "ALIEN-ARRAY-TYPE" "ALIEN-ARRAY-TYPE-DIMENSIONS" "ALIEN-ARRAY-TYPE-ELEMENT-TYPE" "ALIEN-ARRAY-TYPE-P" "ALIEN-BOOLEAN-TYPE" "ALIEN-BOOLEAN-TYPE-P" "ALIEN-DOUBLE-FLOAT-TYPE" "ALIEN-DOUBLE-FLOAT-TYPE-P" "ALIEN-ENUM-TYPE" "ALIEN-ENUM-TYPE-P" "ALIEN-FLOAT-TYPE" "ALIEN-FLOAT-TYPE-P" "ALIEN-FUN-TYPE" "ALIEN-FUN-TYPE-ARG-TYPES" "ALIEN-FUN-TYPE-P" "ALIEN-FUN-TYPE-RESULT-TYPE" "ALIEN-INTEGER-TYPE" "ALIEN-INTEGER-TYPE-P" "ALIEN-INTEGER-TYPE-SIGNED" "ALIEN-LONG-FLOAT-TYPE" "ALIEN-LONG-FLOAT-TYPE-P" "ALIEN-POINTER-TYPE" "ALIEN-POINTER-TYPE-P" "ALIEN-POINTER-TYPE-TO" "ALIEN-RECORD-FIELD" "ALIEN-RECORD-FIELD-NAME" "ALIEN-RECORD-FIELD-OFFSET" "ALIEN-RECORD-FIELD-P" "ALIEN-RECORD-FIELD-TYPE" "ALIEN-RECORD-TYPE" "ALIEN-RECORD-TYPE-FIELDS" "ALIEN-RECORD-TYPE-P" "ALIEN-SINGLE-FLOAT-TYPE" "ALIEN-SINGLE-FLOAT-TYPE-P" "ALIEN-SUBTYPE-P" "ALIEN-TYPE" "ALIEN-TYPE-=" "ALIEN-TYPE-ALIGNMENT" "ALIEN-TYPE-BITS" "ALIEN-TYPE-P" "ALIEN-TYPEP" "ALIEN-VALUE" "ALIEN-VALUE-TYPE" "ALIEN-VALUE-SAP" "ALIEN-VALUE-P" "ALIEN-VALUES-TYPE" "ALIEN-VALUES-TYPE-P" "ALIEN-VALUES-TYPE-VALUES" "ALIGN-OFFSET" "COMPUTE-ALIEN-REP-TYPE" "COMPUTE-DEPORT-LAMBDA" "COMPUTE-DEPOSIT-LAMBDA" "COMPUTE-EXTRACT-LAMBDA" "COMPUTE-LISP-REP-TYPE" "COMPUTE-NATURALIZE-LAMBDA" "DEFINE-ALIEN-TYPE-CLASS" "DEFINE-ALIEN-TYPE-METHOD" "DEFINE-ALIEN-TYPE-TRANSLATOR" "DEPORT" "DEPOSIT-ALIEN-VALUE" "DISPOSE-LOCAL-ALIEN" "EXTRACT-ALIEN-VALUE" "HEAP-ALIEN-INFO" "HEAP-ALIEN-INFO-P" "HEAP-ALIEN-INFO-SAP-FORM" "HEAP-ALIEN-INFO-TYPE" "INVOKE-ALIEN-TYPE-METHOD" "LOCAL-ALIEN" "LOCAL-ALIEN-INFO" "LOCAL-ALIEN-INFO-FORCE-TO-MEMORY-P" "LOCAL-ALIEN-INFO-P" "LOCAL-ALIEN-INFO-TYPE" "MAKE-ALIEN-FUN-TYPE" "MAKE-ALIEN-POINTER-TYPE" "MAKE-ALIEN-VALUE" "MAKE-LOCAL-ALIEN" "NATURALIZE" "NOTE-LOCAL-ALIEN-TYPE" "PARSE-ALIEN-TYPE" "UNPARSE-ALIEN-TYPE")) #s(sb-cold:package-data :name "SB!ASSEM" :doc "private: the assembler, used by the compiler" :use ("CL" "SB!EXT" "SB!INT") :export ("ASSEMBLY-UNIT" "*ASSEM-SCHEDULER-P*" "*ASSEM-INSTRUCTIONS*" "*ASSEM-MAX-LOCATIONS*" "EMIT-BYTE" "EMIT-SKIP" "EMIT-BACK-PATCH" "EMIT-CHOOSER" "DEFINE-BITFIELD-EMITTER" "DEFINE-INSTRUCTION" "DEFINE-INSTRUCTION-MACRO" "DEF-ASSEMBLER-PARAMS" "EMIT-POSTIT" "MAKE-SEGMENT" "SEGMENT-NAME" "ASSEMBLE" "ALIGN" "INST" "LABEL" "LABEL-P" "GEN-LABEL" "EMIT-LABEL" "LABEL-POSITION" "APPEND-SEGMENT" "FINALIZE-SEGMENT" "ON-SEGMENT-CONTENTS-VECTORLY" "WRITE-SEGMENT-CONTENTS" "READS" "WRITES" "SEGMENT" "WITHOUT-SCHEDULING" "VARIABLE-LENGTH" "SEGMENT-COLLECT-DYNAMIC-STATISTICS" ;; FIXME: These are in the SB-ASSEM package now, but ;; (left over from CMU CL) are defined in files which ;; are IN-PACKAGE SB-C. It would probably be cleaner ;; to move at least most of them to files which are ;; IN-PACKAGE SB-ASSEM. "BRANCH" "DO-SSET-ELEMENTS" "FLUSHABLE" "MAKE-SSET" "SSET" "SSET-ADJOIN" "SSET-DELETE" "SSET-ELEMENT" "SSET-EMPTY")) #s(sb-cold:package-data :name "SB!BIGNUM" :doc "private: bignum implementation" :use ("CL" "SB!KERNEL" "SB!INT" "SB!EXT") :export ("%ADD-WITH-CARRY" "%ALLOCATE-BIGNUM" "%ASHL" "%ASHR" "%BIGNUM-LENGTH" "%BIGNUM-REF" "%BIGNUM-SET" "%BIGNUM-SET-LENGTH" "%DIGIT-0-OR-PLUSP" "%DIGIT-LOGICAL-SHIFT-RIGHT" "%FIXNUM-DIGIT-WITH-CORRECT-SIGN" "%FIXNUM-TO-DIGIT" "%FLOOR" "%LOGAND" "%LOGIOR" "%LOGNOT" "%LOGXOR" "%MULTIPLY" "%MULTIPLY-AND-ADD" "%SUBTRACT-WITH-BORROW" "ADD-BIGNUMS" "BIGNUM-ASHIFT-LEFT" "BIGNUM-ASHIFT-RIGHT" "BIGNUM-COMPARE" "BIGNUM-DEPOSIT-BYTE" "BIGNUM-ELEMENT-TYPE" "BIGNUM-GCD" "BIGNUM-INDEX" "BIGNUM-INTEGER-LENGTH" "BIGNUM-LOAD-BYTE" "BIGNUM-LOGCOUNT" "BIGNUM-LOGICAL-AND" "BIGNUM-LOGICAL-IOR" "BIGNUM-LOGICAL-NOT" "BIGNUM-LOGICAL-XOR" "BIGNUM-PLUS-P" "BIGNUM-TO-FLOAT" "BIGNUM-TRUNCATE" "BIGNUM-TYPE" "FLOAT-BIGNUM-RATIO" "MAKE-SMALL-BIGNUM" "MULTIPLY-BIGNUM-AND-FIXNUM" "MULTIPLY-BIGNUMS" "MULTIPLY-FIXNUMS" "NEGATE-BIGNUM" "SUBTRACT-BIGNUM" "SXHASH-BIGNUM")) #s(sb-cold:package-data :name "SB!C" :doc "private: implementation of the compiler" ;; (It seems strange to have the compiler USE SB-ALIEN-INTERNALS, ;; but the point seems to be to be able to express things like ;; SB!C:DEFTRANSFORM SB-ALIEN-INTERNALS:MAKE-LOCAL-ALIEN without ;; having to use a bunch of package prefixes, by putting them ;; in the SB-C package. Maybe it'd be tidier to define an SB-ALIEN-COMP ;; package for this? But it seems like a fairly low priority.) ;; (Probably the same considerations also explain why BIGNUM is ;;in the USE list.) :use ("CL" "SB!ALIEN-INTERNALS" "SB!ALIEN" "SB!ASSEM" "SB!BIGNUM" #!+sb-dyncount "SB-DYNCOUNT" "SB!EXT" "SB!FASL" "SB!INT" "SB!KERNEL" "SB!SYS") :reexport ("SLOT" "CODE-INSTRUCTIONS" "FLUSHABLE") :export ("%ALIEN-FUNCALL" "%CATCH-BREAKUP" "%CONTINUE-UNWIND" "%LISTIFY-REST-ARGS" "%MORE-ARG" "%MORE-ARG-VALUES" "%UNWIND-PROTECT-BREAKUP" "*BACKEND-BYTE-ORDER*" "*BACKEND-DISASSEM-PARAMS*" "*BACKEND-INSTRUCTION-FLAVORS*" "*BACKEND-INSTRUCTION-FORMATS*" "*BACKEND-INTERNAL-ERRORS*" "*BACKEND-PAGE-SIZE*" "*BACKEND-REGISTER-SAVE-PENALTY*" "*BACKEND-SB-LIST*" "*BACKEND-SB-NAMES*" "*BACKEND-SC-NAMES*" "*BACKEND-SC-NUMBERS*" "*BACKEND-SPECIAL-ARG-TYPES*" "*BACKEND-SUBFEATURES*" "*BACKEND-T-PRIMITIVE-TYPE*" "*CODE-SEGMENT*" "*COUNT-VOP-USAGES*" "*ELSEWHERE*" "*FREE-FUNS*" "*LEXENV*" "*SETF-ASSUMED-FBOUNDP*" "*SUPPRESS-VALUES-DECLARATION*" "ALLOC-ALIEN-STACK-SPACE" "ALLOC-NUMBER-STACK-SPACE" "ALLOCATE-CODE-OBJECT" "ALLOCATE-FRAME" "ALLOCATE-DYNAMIC-CODE-OBJECT" "ALLOCATE-FULL-CALL-FRAME" "ANY" "ARG-COUNT-ERROR" "ASSEMBLE-FILE" "ATTRIBUTES" "ATTRIBUTES-INTERSECTION" "ATTRIBUTES-UNION" "ATTRIBUTES=" "BIND" "CALL" "CALL-LOCAL" "CALL-NAMED" "CALL-OUT" "CALL-VARIABLE" "CALLEE-NFP-TN" "CALLEE-RETURN-PC-TN" "CASE-BODY" "CATCH-BLOCK" "CHECK-CONS" "CHECK-FIXNUM" "CHECK-FUN" "CHECK-SIGNED-BYTE-32" "CHECK-SYMBOL" "CHECK-UNSIGNED-BYTE-32" "CLOSURE-INIT" "CLOSURE-REF" "CODE-CONSTANT-REF" "CODE-CONSTANT-SET" "COMPILE-IN-LEXENV" "COMPILE-LAMBDA-FOR-DEFUN" "%COMPILER-DEFUN" "COMPILER-ERROR" "COMPONENT" "COMPONENT-HEADER-LENGTH" "COMPONENT-INFO" "COMPONENT-LIVE-TN" "COMPUTE-FUN" "COMPUTE-OLD-NFP" "COPY-MORE-ARG" "CURRENT-BINDING-POINTER" "CURRENT-NFP-TN" "CURRENT-STACK-POINTER" "DEALLOC-ALIEN-STACK-SPACE" "DEALLOC-NUMBER-STACK-SPACE" "DEF-IR1-TRANSLATOR" "!DEF-PRIMITIVE-TYPE" "!DEF-PRIMITIVE-TYPE-ALIAS" "DEFINE-SOURCE-TRANSFORM" "!DEF-VM-SUPPORT-ROUTINE" "DEFINE-ASSEMBLY-ROUTINE" "DEFINE-MOVE-FUN" "DEFINE-MOVE-VOP" "DEFINE-STORAGE-BASE" "DEFINE-STORAGE-CLASS" "DEFINE-VOP" "DEFKNOWN" "DEFOPTIMIZER" "DEFTRANSFORM" "DERIVE-TYPE" "ENTRY-NODE-INFO-NLX-TAG" "ENTRY-NODE-INFO-ST-TOP" "PHYSENV-DEBUG-LIVE-TN" "PHYSENV-LIVE-TN" "FAST-SYMBOL-VALUE" "FOLDABLE" "FORCE-TN-TO-STACK" "FUN-INFO-DERIVE-TYPE" "FUN-INFO-IR2-CONVERT" "FUN-INFO-LTN-ANNOTATE" "FUN-INFO-OPTIMIZER" "GET-VECTOR-SUBTYPE" "HALT" "IF-EQ" "INLINE-SYNTACTIC-CLOSURE-LAMBDA" "INSTANCE-REF" "INSTANCE-SET" "IR2-COMPONENT-CONSTANTS" "IR2-CONVERT" "IR2-PHYSENV-NUMBER-STACK-P" "KNOWN-CALL-LOCAL" "KNOWN-RETURN" "LAMBDA-WITH-LEXENV" "LEXENV-FIND" "LOCATION=" "LTN-ANNOTATE" "MAKE-ALIAS-TN" "MAKE-CATCH-BLOCK" "MAKE-CLOSURE" "MAKE-CONSTANT-TN" "MAKE-FIXNUM" "MAKE-LOAD-TIME-CONSTANT-TN" "MAKE-N-TNS" "MAKE-NORMAL-TN" "MAKE-OTHER-IMMEDIATE-TYPE" "MAKE-RANDOM-TN" "MAKE-REPRESENTATION-TN" "MAKE-RESTRICTED-TN" "MAKE-SC-OFFSET" "MAKE-STACK-POINTER-TN" "MAKE-TN-REF" "MAKE-UNWIND-BLOCK" "MAKE-WIRED-TN" "MAYBE-COMPILER-NOTE" "MAYBE-INLINE-SYNTACTIC-CLOSURE" "META-PRIMITIVE-TYPE-OR-LOSE" "META-SB-OR-LOSE" "META-SC-NUMBER-OR-LOSE" "META-SC-OR-LOSE" "MORE-ARG-CONTEXT" "MOVABLE" "MOVE" "MULTIPLE-CALL" "MULTIPLE-CALL-LOCAL" "MULTIPLE-CALL-NAMED" "MULTIPLE-CALL-VARIABLE" "NLX-ENTRY" "NLX-ENTRY-MULTIPLE" "NON-DESCRIPTOR-STACK" "NOTE-ENVIRONMENT-START" "NOTE-THIS-LOCATION" "OPTIMIZER" "PACK-TRACE-TABLE" "PARSE-EVAL-WHEN-SITUATIONS" "POLICY" "PREDICATE" "PRIMITIVE-TYPE" "PRIMITIVE-TYPE-OF" "PRIMITIVE-TYPE-OR-LOSE" "PRIMITIVE-TYPE-VOP" "PRIMITIVE-TYPE-NAME" "PUSH-VALUES" "READ-PACKED-BIT-VECTOR" "READ-VAR-INTEGER" "READ-VAR-STRING" "RESET-STACK-POINTER" "RESTORE-DYNAMIC-STATE" "RETURN-MULTIPLE" "SAVE-DYNAMIC-STATE" "SB" "SB-ALLOCATED-SIZE" "SB-NAME" "SB-OR-LOSE" "SB-P" "SC" "SC-CASE" "SC-IS" "SC-NAME" "SC-NUMBER" "SC-NUMBER-OR-LOSE" "SC-OFFSET" "SC-OFFSET-OFFSET" "SC-OFFSET-SCN" "SC-OR-LOSE" "SC-P" "SC-SB" "SET-UNWIND-PROTECT" "SET-VECTOR-SUBTYPE" "SETUP-CLOSURE-ENVIRONMENT" "SETUP-ENVIRONMENT" "SPECIFY-SAVE-TN" "INSTANCE-REF" "INSTANCE-SET" "TAIL-CALL" "TAIL-CALL-NAMED" "TAIL-CALL-VARIABLE" "TEMPLATE-OR-LOSE" "TN" "TN-OFFSET" "TN-P" "TN-REF" "TN-REF-ACROSS" "TN-REF-LOAD-TN" "TN-REF-NEXT" "TN-REF-NEXT-REF" "TN-REF-P" "TN-REF-TARGET" "TN-REF-TN" "TN-REF-VOP" "TN-REF-WRITE-P" "TN-SC" "TN-VALUE" "TRACE-TABLE-ENTRY" "TYPE-CHECK-ERROR" "UNBIND" "UNBIND-TO-HERE" "UNSAFE" "UNWIND" "UWP-ENTRY" "VERIFY-ARG-COUNT" "WRITE-PACKED-BIT-VECTOR" "WRITE-VAR-INTEGER" "WRITE-VAR-STRING" "XEP-ALLOCATE-FRAME" "LABEL-ID" "FIXUP" "FIXUP-FLAVOR" "FIXUP-NAME" "FIXUP-OFFSET" "FIXUP-P" "MAKE-FIXUP" "DEF-ALLOC" "VAR-ALLOC" "SAFE-FDEFN-FUN" "NOTE-FIXUP" "DEF-REFFER" "EMIT-NOP" "DEF-SETTER" "FIXED-ALLOC" "MAKE-UNBOUND-MARKER" "RETURN-SINGLE" "NOTE-NEXT-INSTRUCTION" "SET-SLOT" "LOCATION-NUMBER" "*COMPONENT-BEING-COMPILED*" "BLOCK-NUMBER" "BACKEND" "IR2-BLOCK-BLOCK" "FUNCALLABLE-INSTANCE-LEXENV" "VOP-BLOCK" "*ASSEMBLY-OPTIMIZE*" "LARGE-ALLOC" "%SET-SIMPLE-FUN-SELF" "VM-SUPPORT-ROUTINES-IMMEDIATE-CONSTANT-SC" "VM-SUPPORT-ROUTINES-LOCATION-PRINT-NAME" "VM-SUPPORT-ROUTINES-PRIMITIVE-TYPE-OF" "VM-SUPPORT-ROUTINES-PRIMITIVE-TYPE" "VM-SUPPORT-ROUTINES-MAKE-CALL-OUT-TNS" "VM-SUPPORT-ROUTINES-STANDARD-ARG-LOCATION" "VM-SUPPORT-ROUTINES-MAKE-RETURN-PC-PASSING-LOCATION" "VM-SUPPORT-ROUTINES-MAKE-OLD-FP-PASSING-LOCATION" "VM-SUPPORT-ROUTINES-MAKE-OLD-FP-SAVE-LOCATION" "VM-SUPPORT-ROUTINES-MAKE-RETURN-PC-SAVE-LOCATION" "VM-SUPPORT-ROUTINES-MAKE-ARG-COUNT-LOCATION" "VM-SUPPORT-ROUTINES-MAKE-NFP-TN" "VM-SUPPORT-ROUTINES-MAKE-STACK-POINTER-TN" "VM-SUPPORT-ROUTINES-MAKE-NUMBER-STACK-POINTER-TN" "VM-SUPPORT-ROUTINES-MAKE-UNKNOWN-VALUES-LOCATIONS" "VM-SUPPORT-ROUTINES-SELECT-COMPONENT-FORMAT" "VM-SUPPORT-ROUTINES-MAKE-NLX-SP-TN" "VM-SUPPORT-ROUTINES-MAKE-DYNAMIC-STATE-TNS" "VM-SUPPORT-ROUTINES-MAKE-NLX-ENTRY-ARG-START-LOCATION" "VM-SUPPORT-ROUTINES-GENERATE-CALL-SEQUENCE" "VM-SUPPORT-ROUTINES-GENERATE-RETURN-SEQUENCE" "VM-SUPPORT-ROUTINES-EMIT-NOP" "VM-SUPPORT-ROUTINES-LOCATION-NUMBER")) #s(sb-cold:package-data :name "SB!DEBUG" :doc "sorta public: Eventually this should become the debugger interface, with basic stuff like BACKTRACE and ARG. For now, the actual supported interface is still mixed indiscriminately with low-level internal implementation stuff like *STACK-TOP-HINT* and unsupported stuff like *TRACED-FUN-LIST*." :use ("CL" "SB!EXT" "SB!INT" "SB!SYS") :export ("*DEBUG-BEGINNER-HELP-P*" "*DEBUG-CONDITION*" "*DEBUG-PRINT-LENGTH*" "*DEBUG-PRINT-LEVEL*" "*DEBUG-READTABLE*" "*DEBUG-HELP-STRING*" "*FLUSH-DEBUG-ERRORS*" "*IN-THE-DEBUGGER*" "*TRACE-INDENTATION-STEP*" "*MAX-TRACE-INDENTATION*" "*TRACE-FRAME*" "*TRACED-FUN-LIST*" "ARG" "BACKTRACE" "BACKTRACE-AS-LIST" "INTERNAL-DEBUG" "VAR" "*PRINT-LOCATION-KIND*" "*ONLY-BLOCK-START-LOCATIONS*" "*STACK-TOP-HINT*" "*TRACE-VALUES*" "DO-DEBUG-COMMAND" "*TRACE-ENCAPSULATE-DEFAULT*")) #s(sb-cold:package-data :name "SB!DI" :doc "private: primitives used to write debuggers" :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL" "SB!SYS" "SB!VM") :import-from (("SB!C" "DEBUG-SOURCE-FROM" "DEBUG-SOURCE-NAME" "DEBUG-SOURCE-CREATED" "DEBUG-SOURCE-COMPILED" "DEBUG-SOURCE-START-POSITIONS" "MAKE-DEBUG-SOURCE" "DEBUG-SOURCE" "DEBUG-SOURCE-P")) :reexport ("DEBUG-SOURCE-FROM" "DEBUG-SOURCE-NAME" "DEBUG-SOURCE-CREATED" "DEBUG-SOURCE-COMPILED" "DEBUG-SOURCE-START-POSITIONS" "DEBUG-SOURCE" "DEBUG-SOURCE-P") :export ("ACTIVATE-BREAKPOINT" "AMBIGUOUS-DEBUG-VARS" "AMBIGUOUS-VAR-NAME" "BREAKPOINT" "BREAKPOINT-ACTIVE-P" "BREAKPOINT-HOOK-FUN" "BREAKPOINT-INFO" "BREAKPOINT-KIND" "BREAKPOINT-P" "BREAKPOINT-WHAT" "CODE-LOCATION" "CODE-LOCATION-DEBUG-BLOCK" "CODE-LOCATION-DEBUG-FUN" "CODE-LOCATION-DEBUG-SOURCE" "CODE-LOCATION-FORM-NUMBER" "CODE-LOCATION-P" "CODE-LOCATION-TOPLEVEL-FORM-OFFSET" "CODE-LOCATION-UNKNOWN-P" "CODE-LOCATION=" "DEACTIVATE-BREAKPOINT" "DEBUG-BLOCK" "DEBUG-BLOCK-ELSEWHERE-P" "DEBUG-BLOCK-P" "DEBUG-BLOCK-SUCCESSORS" "DEBUG-CONDITION" "DEBUG-ERROR" "DEBUG-FUN" "DEBUG-FUN-FUN" "DEBUG-FUN-KIND" "DEBUG-FUN-LAMBDA-LIST" "DEBUG-FUN-NAME" "DEBUG-FUN-P" "DEBUG-FUN-START-LOCATION" "DEBUG-FUN-SYMBOL-VARS" "DEBUG-SOURCE-ROOT-NUMBER" "DEBUG-VAR" "DEBUG-VAR-ID" "DEBUG-VAR-INFO-AVAILABLE" "DEBUG-VAR-SYMBOL-NAME" "DEBUG-VAR-P" "DEBUG-VAR-PACKAGE-NAME" "DEBUG-VAR-SYMBOL" "DEBUG-VAR-VALID-VALUE" "DEBUG-VAR-VALIDITY" "DEBUG-VAR-VALUE" "DELETE-BREAKPOINT" "DO-BLOCKS" "DO-DEBUG-BLOCK-LOCATIONS" "DO-DEBUG-FUN-BLOCKS" "DO-DEBUG-FUN-VARS" "FORM-NUMBER-TRANSLATIONS" "FRAME" "FRAME-CATCHES" "FRAME-CODE-LOCATION" "FRAME-DEBUG-FUN" "FRAME-DOWN" "FRAME-FUN-MISMATCH" "FRAME-NUMBER" "FRAME-P" "FRAME-UP" "FUN-DEBUG-FUN" "FUN-END-COOKIE-VALID-P" "INVALID-CONTROL-STACK-POINTER" "INVALID-VALUE" "LAMBDA-LIST-UNAVAILABLE" "MAKE-BREAKPOINT" "NO-DEBUG-BLOCKS" "NO-DEBUG-FUN-RETURNS" "NO-DEBUG-INFO" "PREPROCESS-FOR-EVAL" "RETURN-FROM-FRAME" "SOURCE-PATH-CONTEXT" "TOP-FRAME" "UNHANDLED-DEBUG-CONDITION" "UNKNOWN-CODE-LOCATION" "UNKNOWN-CODE-LOCATION-P" "UNKNOWN-DEBUG-VAR" "CODE-LOCATION-KIND" "FLUSH-FRAMES-ABOVE")) #s(sb-cold:package-data :name "SB!DISASSEM" :doc "private: stuff related to the implementation of the disassembler" :use ("CL" "SB!EXT" "SB!INT") :export ("*DISASSEM-INST-ALIGNMENT-BYTES*" "*DISASSEM-NOTE-COLUMN*" "*DISASSEM-OPCODE-COLUMN-WIDTH*" "*DISASSEM-SCHEDULER-P*" "*DISASSEM-LOCATION-COLUMN-WIDTH*" "ADD-COMMENT-HOOK" "ADD-HOOK" "ADD-NOTE-HOOK" "ARG-VALUE" "CREATE-DSTATE" "DISASSEM-STATE" "DISASSEMBLE-CODE-COMPONENT" "DISASSEMBLE-FUN" "DISASSEMBLE-MEMORY" "DISASSEMBLE-SEGMENT" "DISASSEMBLE-SEGMENTS" "DSTATE-CODE" "DSTATE-CURPOS" "DSTATE-GET-PROP" "DSTATE-NEXTPOS" "DSTATE-SEGMENT-LENGTH" "DSTATE-SEGMENT-SAP" "DSTATE-SEGMENT-START" "FIELD-TYPE" "FIND-INST" "GEN-FIELD-TYPE-DECL-FORM" "GEN-INST-DECL-FORM" "GEN-INST-FORMAT-DECL-FORM" "GET-CODE-SEGMENTS" "GET-FUN-SEGMENTS" "GET-INST-SPACE" "HANDLE-BREAK-ARGS" "INST" "INST-FORMAT" "LABEL-SEGMENTS" "MAYBE-NOTE-ASSEMBLER-ROUTINE" "MAYBE-NOTE-ASSOCIATED-STORAGE-REF" "MAYBE-NOTE-NIL-INDEXED-OBJECT" "MAYBE-NOTE-NIL-INDEXED-SYMBOL-SLOT-REF" "MAYBE-NOTE-SINGLE-STORAGE-REF" "NOTE" "NOTE-CODE-CONSTANT" "PARAMS" "PRIN1-QUOTED-SHORT" "PRIN1-SHORT" "PRINT-BYTES" "PRINT-CURRENT-ADDRESS" "PRINT-FIELD" "PRINT-INST" "PRINT-INST-USING" "PRINT-NOTES-AND-NEWLINE" "PRINT-WORDS" "SAP-REF-DCHUNK" "SEG-DEBUG-FUN" "SEG-LENGTH" "SEG-START" "SEGMENT" "SET-ADDRESS-PRINTING-RANGE" "SET-DISASSEM-PARAMS" "SET-DSTATE-SEGMENT" "SIGN-EXTEND" "SPECIALIZE" "GEN-PRINTER-DEF-FORMS-DEF-FORM" "MAKE-DSTATE" "DEFINE-ARG-TYPE" "GEN-ARG-TYPE-DEF-FORM" "READ-SIGNED-SUFFIX" "ADD-OFFS-HOOK" "MAKE-MEMORY-SEGMENT" "GEN-PREAMBLE-FORM" "MAKE-SEGMENT" "SEGMENT-OVERFLOW" "SEG-VIRTUAL-LOCATION" "MAKE-DECODED-INST" "DCHUNK" "*DEFAULT-DSTATE-HOOKS*" "MAKE-CODE-SEGMENT" "MAKE-OFFS-HOOK" "DSTATE-SEGMENT" "DSTATE-CUR-OFFS" "PRINC16" "INSTRUCTION" "DEFINE-INSTRUCTION-FORMAT" "DSTATE-NEXT-OFFS" "INSTALL-INST-FLAVORS" "SEG-SAP-MAKER" "DISASSEMBLE-ASSEM-SEGMENT" "GEN-CLEAR-INFO-FORM" "READ-SUFFIX" "MAP-SEGMENT-INSTRUCTIONS" "GEN-FORMAT-DEF-FORM" "SET-LOCATION-PRINTING-RANGE" "MAKE-VECTOR-SEGMENT" "ADD-OFFS-NOTE-HOOK" "ADD-OFFS-COMMENT-HOOK" "DSTATE-CUR-ADDR" "DSTATE-NEXT-ADDR")) #!+sb-dyncount #s(sb-cold:package-data :name "SB!DYNCOUNT" :doc "private: some somewhat-stale code for collecting runtime statistics" :use ("CL" "SB!ALIEN-INTERNALS" "SB!ALIEN" "SB!BIGNUM" "SB!EXT" "SB!INT" "SB!KERNEL" "SB!ASSEM" "SB!SYS") :export ("*COLLECT-DYNAMIC-STATISTICS*" "COUNT-ME" "DYNCOUNT-INFO-COUNTS" "DYNCOUNT-INFO-COSTS" "IR2-COMPONENT-DYNCOUNT-INFO" "DYNCOUNT-INFO" "DYNCOUNT-INFO-P")) #s(sb-cold:package-data :name "SB!FASL" :doc "private: stuff related to FASL load/dump logic (and GENESIS)" :use ("CL" "SB!ALIEN" "SB!ASSEM" "SB!BIGNUM" "SB!C" "SB!EXT" "SB!INT" "SB!KERNEL" "SB!SYS") :export ("*ASSEMBLER-ROUTINES*" "+BACKEND-FASL-FILE-IMPLEMENTATION+" "BUILD-ID-CORE-ENTRY-TYPE-CODE" "*FASL-FILE-TYPE*" "CLOSE-FASL-OUTPUT" "DUMP-ASSEMBLER-ROUTINES" "DUMP-OBJECT" "DYNAMIC-CORE-SPACE-ID" "END-CORE-ENTRY-TYPE-CODE" "FASL-CONSTANT-ALREADY-DUMPED-P" "+FASL-FILE-VERSION+" "FASL-DUMP-COLD-LOAD-FORM" "FASL-DUMP-COMPONENT" "FASL-DUMP-COLD-FSET" "FASL-DUMP-LOAD-TIME-VALUE" "FASL-DUMP-LOAD-TIME-VALUE-LAMBDA" "FASL-DUMP-SOURCE-INFO" "FASL-DUMP-TOPLEVEL-LAMBDA-CALL" "FASL-NOTE-HANDLE-FOR-CONSTANT" "FASL-OUTPUT" "FASL-OUTPUT-P" "FASL-OUTPUT-ENTRY-TABLE" "FASL-OUTPUT-STREAM" "FASL-VALIDATE-STRUCTURE" "INITIAL-FUN-CORE-ENTRY-TYPE-CODE" "*!LOAD-TIME-VALUES*" "LOAD-TYPE-PREDICATE" "NEW-DIRECTORY-CORE-ENTRY-TYPE-CODE" "OPEN-FASL-OUTPUT" "READ-ONLY-CORE-SPACE-ID" "*!REVERSED-COLD-TOPLEVELS*" "STATIC-CORE-SPACE-ID" "*STATIC-FOREIGN-SYMBOLS*" "VERSION-CORE-ENTRY-TYPE-CODE")) ;; This package is a grab bag for things which used to be internal ;; symbols in package COMMON-LISP. Lots of these symbols are accessed ;; with explicit SB!IMPL:: prefixes in the code. It would be nice to ;; reduce the use of this practice, so if symbols from here which are ;; accessed that way are found to belong more appropriately in ;; an existing package (e.g. KERNEL or SYS or EXT or FASL), I ;; (WHN 19990223) encourage maintainers to move them there.. ;; ;; ..except that it's getting so big and crowded that maybe it should ;; be split up, too. #s(sb-cold:package-data :name "SB!IMPL" :doc "private: a grab bag of implementation details" :use ("CL" "SB!ALIEN" "SB!BIGNUM" "SB!DEBUG" "SB!EXT" "SB!FASL" "SB!GRAY" "SB!INT" "SB!KERNEL" "SB!SYS")) #s(sb-cold:package-data :name "SB!EXT" :doc "public: miscellaneous supported extensions to the ANSI Lisp spec" :use ("CL" "SB!ALIEN" "SB!INT" "SB!SYS" "SB!GRAY") :export (;; Information about how the program was invoked is ;; nonstandard but very useful. "*POSIX-ARGV*" "POSIX-GETENV" "POSIX-ENVIRON" ;; People have various good reasons to mess with the GC. "*AFTER-GC-HOOKS*" "*BEFORE-GC-HOOKS*" "*GC-NOTIFY-AFTER*" "*GC-NOTIFY-BEFORE*" "*GC-NOTIFY-STREAM*" "BYTES-CONSED-BETWEEN-GCS" "GC" "GC-OFF" "GC-ON" "GET-BYTES-CONSED" "*GC-RUN-TIME*" "PURIFY" ;; There is no one right way to report progress on ;; hairy compiles. "*COMPILE-PROGRESS*" ;; It can be handy to be able to evaluate expressions involving ;; the thing under examination by CL:INSPECT. "*INSPECTED*" ;; There is no one right way to do efficiency notes. "*EFFICIENCY-NOTE-COST-THRESHOLD*" "*EFFICIENCY-NOTE-LIMIT*" ;; There's no one right way to report errors. "*ENCLOSING-SOURCE-CUTOFF*" "*UNDEFINED-WARNING-LIMIT*" ;; and for dedicated users who really want to customize ;; error reporting, we have "DEFINE-SOURCE-CONTEXT" ;; FIXME: This name doesn't match the DEFFOO - vs. - ;; DEFINE-FOO convention used in the ANSI spec, and so ;; was deprecated in sbcl-0.pre7, ca. 2001-12-12. After ;; a year or so it can go away completely. "DEF-SOURCE-CONTEXT" ;; FIXME: These seem like the right thing, but are they ;; consistent with ANSI? (And actually maybe they're not ;; quite the right thing; it might be better to also do ;; WITH-STANDARD-IO-SYNTAX or something.) "*ERROR-PRINT-LENGTH*" "*ERROR-PRINT-LEVEL*" "*ERROR-PRINT-LINES*" ;; extended declarations.. "FREEZE-TYPE" "INHIBIT-WARNINGS" "MAYBE-INLINE" ;; ..and variables to control compiler policy "*INLINE-EXPANSION-LIMIT*" "*USE-IMPLEMENTATION-TYPES*" "*DERIVE-FUNCTION-TYPES*" ;; ..and inspector of compiler policy "DESCRIBE-COMPILER-POLICY" ;; a special form for breaking out of our "declarations ;; are assertions" default "TRULY-THE" ;; This is something which must exist inside any Common ;; Lisp implementation, and which someone writing a ;; customized toplevel might well want. It seems perverse ;; to hide it from them.. "INTERACTIVE-EVAL" ;; weak pointers and finalization "CANCEL-FINALIZATION" "FINALIZE" "HASH-TABLE-WEAK-P" "MAKE-WEAK-POINTER" "WEAK-POINTER" "WEAK-POINTER-P" "WEAK-POINTER-VALUE" ;; If the user knows we're doing IEEE, he might reasonably ;; want to do this stuff. "FLOAT-DENORMALIZED-P" "FLOAT-NAN-P" "FLOAT-TRAPPING-NAN-P" "FLOAT-INFINITY-P" "SHORT-FLOAT-NEGATIVE-INFINITY" "SHORT-FLOAT-POSITIVE-INFINITY" "SINGLE-FLOAT-NEGATIVE-INFINITY" "SINGLE-FLOAT-POSITIVE-INFINITY" "DOUBLE-FLOAT-NEGATIVE-INFINITY" "DOUBLE-FLOAT-POSITIVE-INFINITY" "LONG-FLOAT-NEGATIVE-INFINITY" "LONG-FLOAT-POSITIVE-INFINITY" ;; hacks to work around system limitations "*INTEXP-MAXIMUM-EXPONENT*" ; since we crash hard when ; memory is exhausted ;; saving Lisp images "SAVE-LISP-AND-DIE" ;; provided for completeness to make it more convenient ;; to use command-line --disable-debugger functionality ;; in oddball situations (like building core files using ;; scripts which run unattended, when the core files are ;; intended for interactive use) "DISABLE-DEBUGGER" "ENABLE-DEBUGGER" ;; miscellaneous useful supported extensions "QUIT" "*MODULE-PROVIDER-FUNCTIONS*" ;; RUN-PROGRAM is not only useful for users, but also ;; useful to implement parts of SBCL itself, so we're ;; going to have to implement it anyway, so we might ;; as well support it. And then once we're committed ;; to implementing RUN-PROGRAM, it's nice to have it ;; return a PROCESS object with operations defined on ;; that object. "RUN-PROGRAM" "PROCESS-ALIVE-P" "PROCESS-CLOSE" "PROCESS-CORE-DUMPED" "PROCESS-ERROR" "PROCESS-EXIT-CODE" "PROCESS-INPUT" "PROCESS-KILL" "PROCESS-OUTPUT" "PROCESS-P" "PROCESS-PID" "PROCESS-PLIST" "PROCESS-PTY" "PROCESS-STATUS" "PROCESS-STATUS-HOOK" "PROCESS-WAIT")) #s(sb-cold:package-data :name "SB!FORMAT" :doc "private: implementation of FORMAT and friends" :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL")) #s(sb-cold:package-data :name "SB!GRAY" :doc "public: an implementation of the stream-definition-by-user Lisp extension proposal by David N. Gray" :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL") :export ("FUNDAMENTAL-BINARY-STREAM" "FUNDAMENTAL-BINARY-INPUT-STREAM" "FUNDAMENTAL-BINARY-OUTPUT-STREAM" "FUNDAMENTAL-CHARACTER-STREAM" "FUNDAMENTAL-CHARACTER-INPUT-STREAM" "FUNDAMENTAL-CHARACTER-OUTPUT-STREAM" "FUNDAMENTAL-INPUT-STREAM" "FUNDAMENTAL-OUTPUT-STREAM" "FUNDAMENTAL-STREAM" "STREAM-ADVANCE-TO-COLUMN" "STREAM-CLEAR-INPUT" "STREAM-CLEAR-OUTPUT" "STREAM-FINISH-OUTPUT" "STREAM-FORCE-OUTPUT" "STREAM-FRESH-LINE" "STREAM-LINE-COLUMN" "STREAM-LINE-LENGTH" "STREAM-LISTEN" "STREAM-PEEK-CHAR" "STREAM-READ-BYTE" "STREAM-READ-CHAR" "STREAM-READ-CHAR-NO-HANG" "STREAM-READ-LINE" "STREAM-READ-SEQUENCE" "STREAM-START-LINE-P" "STREAM-TERPRI" "STREAM-UNREAD-CHAR" "STREAM-WRITE-BYTE" "STREAM-WRITE-CHAR" "STREAM-WRITE-SEQUENCE" "STREAM-WRITE-STRING")) #s(sb-cold:package-data :name "SB!INT" :doc "private: miscellaneous unsupported extensions to the ANSI spec. Much of the stuff in here originated in CMU CL's EXTENSIONS package and is retained, possibly temporariliy, because it might be used internally." :use ("CL" "SB!ALIEN" "SB!GRAY" "SB!FASL" "SB!SYS") :export ("*AFTER-SAVE-INITIALIZATIONS*" "*BEFORE-SAVE-INITIALIZATIONS*" ;; lambda list keyword extensions "&MORE" ;; INFO stuff doesn't belong in a user-visible package, we ;; should be able to change it without apology. "*INFO-ENVIRONMENT*" "CLEAR-INFO" "COMPACT-INFO-ENVIRONMENT" "DEFINE-INFO-CLASS" "DEFINE-INFO-TYPE" "DO-INFO" "INFO" "MAKE-INFO-ENVIRONMENT" ;; packages grabbed once and for all "*KEYWORD-PACKAGE*" "*CL-PACKAGE*" ;; hash mixing operations "MIX" "MIXF" ;; I'm not convinced that FDEFINITIONs are the ideal ;; solution, so exposing ways to peek into the system ;; seems undesirable, since it makes it harder to get ;; rid of FDEFINITIONs entirely later. "*SETF-FDEFINITION-HOOK*" ;; error-reporting facilities "SIMPLE-CONTROL-ERROR" "SIMPLE-FILE-ERROR" "SIMPLE-PARSE-ERROR" "SIMPLE-PROGRAM-ERROR" "SIMPLE-STREAM-ERROR" "SIMPLE-STYLE-WARNING" "SPECIAL-FORM-FUNCTION" "STYLE-WARN" ;; bootstrapping magic, to make things happen both in ;; the cross-compilation host compiler's environment and ;; in the cross-compiler's environment "DEF!CONSTANT" "DEF!MACRO" "DEF!METHOD" "DEF!STRUCT" "DEF!TYPE" ;; stuff for hinting to the compiler "NAMED-LAMBDA" ;; other variations on DEFFOO stuff useful for bootstrapping ;; and cross-compiling "DEFMACRO-MUNDANELY" "DEFCONSTANT-EQX" ;; messing with PATHNAMEs "MAKE-TRIVIAL-DEFAULT-PATHNAME" "PHYSICALIZE-PATHNAME" "SANE-DEFAULT-PATHNAME-DEFAULTS" ;; PCOUNTERs "FASTBIG-INCF-PCOUNTER-OR-FIXNUM" "INCF-PCOUNTER" "INCF-PCOUNTER-OR-FIXNUM" "MAKE-PCOUNTER" "PCOUNTER" "PCOUNTER->INTEGER" "PCOUNTER-OR-FIXNUM->INTEGER" "PCOUNTER-P" "*N-BYTES-FREED-OR-PURIFIED*" ;; miscellaneous non-standard but handy user-level functions.. "ASSQ" "DELQ" "MEMQ" "POSQ" "NEQ" "%FIND-PACKAGE-OR-LOSE" "FIND-UNDELETED-PACKAGE-OR-LOSE" "SANE-PACKAGE" "CYCLIC-LIST-P" "COMPOUND-OBJECT-P" "SWAPPED-ARGS-FUN" "AND/TYPE" "ANY/TYPE" "EVERY/TYPE" "EQUAL-BUT-NO-CAR-RECURSION" "TYPE-BOUND-NUMBER" "CONSTANTLY-T" "CONSTANTLY-NIL" "CONSTANTLY-0" "PSXHASH" "%BREAK" "NTH-BUT-WITH-SANE-ARG-ORDER" "DEPRECATION-WARNING" "BIT-VECTOR-=" ;; ..and macros.. "COLLECT" "DO-ANONYMOUS" "DOHASH" "DOVECTOR" "NAMED-LET" "ONCE-ONLY" "DEFENUM" "DEFPRINTER" "AVER" "ENFORCE-TYPE" "AWHEN" "ACOND" "IT" "!DEF-BOOLEAN-ATTRIBUTE" ;; ..and CONDITIONs.. "BUG" "UNSUPPORTED-OPERATOR" ;; ..and DEFTYPEs.. "INDEX" "LOAD/STORE-INDEX" "SIGNED-BYTE-WITH-A-BITE-OUT" "UNSIGNED-BYTE-WITH-A-BITE-OUT" ;; ..and type predicates "INSTANCEP" "DOUBLE-FLOAT-P" "LOGICAL-PATHNAME-P" "LONG-FLOAT-P" "SHORT-FLOAT-P" "SINGLE-FLOAT-P" "FIXNUMP" "BIGNUMP" "RATIOP" ;; encapsulation "ARG-LIST" "BASIC-DEFINITION" "ENCAPSULATE" "ENCAPSULATED-P" "UNENCAPSULATE" ;; various CHAR-CODEs "BACKSPACE-CHAR-CODE" "BELL-CHAR-CODE" "ESCAPE-CHAR-CODE" "FORM-FEED-CHAR-CODE" "LINE-FEED-CHAR-CODE" "RETURN-CHAR-CODE" "RUBOUT-CHAR-CODE" "TAB-CHAR-CODE" ;; symbol-hacking idioms "KEYWORDICATE" "SYMBOLICATE" ;; certainly doesn't belong in public extensions ;; FIXME: maybe belongs in %KERNEL with other typesystem stuff? "CONSTANT-ARG" ;; various internal defaults "DEFAULT-INIT-CHAR" "*DEFAULT-INIT-CHAR-FORM*" "*LOAD-SOURCE-DEFAULT-TYPE*" ;; hash caches "DEFINE-HASH-CACHE" "DEFUN-CACHED" "DEFINE-CACHED-SYNONYM" ;; time "FORMAT-DECODED-TIME" "FORMAT-UNIVERSAL-TIME" ;; indenting "MAKE-INDENTING-STREAM" ;; stream commands, used by the debugger "GET-STREAM-COMMAND" "MAKE-STREAM-COMMAND" "STREAM-COMMAND" "STREAM-COMMAND-ARGS" "STREAM-COMMAND-NAME" "STREAM-COMMAND-P" ;; used for FORMAT tilde paren "MAKE-CASE-FROB-STREAM" ;; helpers for C library calls "STRERROR" "SIMPLE-PERROR" ;; debuggers' little helpers #!+sb-show "*/SHOW*" #!+sb-show "HEXSTR" "/SHOW" "/NOSHOW" "/XHOW" "/NOXHOW" "/SHOW0" "/NOSHOW0" "/HEXSTR" "/NOHEXSTR" "/PRIMITIVE-PRINT" "/NO-PRIMITIVE-PRINT" ;; cross-compilation bootstrap hacks which turn into ;; placeholders in a target system "UNCROSS" ;; might as well be shared among the various files which ;; need it: "*EOF-OBJECT*" ;; alien interface utilities "C-STRINGS->STRING-LIST" ;; misc. utilities used internally "LEGAL-FUN-NAME-P" "LEGAL-FUN-NAME-OR-TYPE-ERROR" "FUN-NAME-BLOCK-NAME" "FUN-NAME-INLINE-EXPANSION" "WHITESPACE-CHAR-P" "LISTEN-SKIP-WHITESPACE" "PACKAGE-INTERNAL-SYMBOL-COUNT" "PACKAGE-EXTERNAL-SYMBOL-COUNT" "PARSE-BODY" "PARSE-LAMBDA-LIST" "PARSE-LAMBDA-LIST-LIKE-THING" "PROPER-LIST-OF-LENGTH-P" "LIST-OF-LENGTH-AT-LEAST-P" "LIST-WITH-LENGTH-P" "READ-SEQUENCE-OR-DIE" "RENAME-KEY-ARGS" "MISSING-ARG" "UNIX-NAMESTRING" ; FIXME: perhaps belongs in package SB!UNIX "FEATUREP" "FLUSH-STANDARD-OUTPUT-STREAMS" "MAKE-GENSYM-LIST" "ABOUT-TO-MODIFY-SYMBOL-VALUE" "SYMBOL-SELF-EVALUATING-P" "PRINT-PRETTY-ON-STREAM-P" "ARRAY-READABLY-PRINTABLE-P" "LOOKS-LIKE-NAME-OF-SPECIAL-VAR-P" "POSITIVE-PRIMEP" "EVAL-IN-LEXENV" "DEBUG-NAMIFY" ;; These could be moved back into SB!EXT if someone has ;; compelling reasons, but hopefully we can get by ;; without supporting them, at least not as publicly ;; accessible things with fixed interfaces. "GET-FLOATING-POINT-MODES" "SET-FLOATING-POINT-MODES" "WITH-FLOAT-TRAPS-MASKED" "DEFINE-HASH-TABLE-TEST" ;; compatibility hacks for old-style CMU CL data formats "UNIX-ENVIRONMENT-CMUCL-FROM-SBCL" "UNIX-ENVIRONMENT-SBCL-FROM-CMUCL" ;; a sort of quasi-unbound tag for use in hash tables "+EMPTY-HT-SLOT+" ;; low-level i/o stuff "DONE-WITH-FAST-READ-BYTE" "DONE-WITH-FAST-READ-CHAR" "FAST-READ-BYTE" "FAST-READ-BYTE-REFILL" "FAST-READ-CHAR" "FAST-READ-CHAR-REFILL" "FAST-READ-S-INTEGER" "FAST-READ-U-INTEGER" "FAST-READ-VAR-U-INTEGER" "FILE-NAME" "INTERN*" "PREPARE-FOR-FAST-READ-BYTE" "PREPARE-FOR-FAST-READ-CHAR" ;; hackery to help set up for cold init "!BEGIN-COLLECTING-COLD-INIT-FORMS" "!COLD-INIT-FORMS" "COLD-FSET" "!DEFUN-FROM-COLLECTED-COLD-INIT-FORMS" ;; hooks for contrib/ stuff we're insufficiently sure ;; about to add to SB!EXT "*REPL-PROMPT-FUN*" "*REPL-READ-FORM-FUN*")) ;; FIXME: This package is awfully huge. It'd probably be good to ;; split it. There's at least one natural way to split it: the ;; implementation of the Lisp type system (e.g. TYPE-INTERSECTION and ;; SPECIFIER-TYPE) could move to a separate package SB!TYPE. (There's ;; lots of stuff which currently uses the SB!KERNEL package which ;; doesn't actually use the type system stuff.) And maybe other ;; possible splits too: ;; * Pull GC stuff (*GC-INHIBIT*, *NEED-TO-COLLECT-GARBAGE*, etc.) ;; out into SB-GC. ;; * Pull special case implementations of sequence functions (e.g. ;; %MAP-TO-LIST-ARITY-1 and %FIND-POSITION-IF-NOT) and ;; other sequence function implementation grot into SB-SEQ. ;; * Pull all the math stuff (%ACOS, %COSH, 32BIT-LOGICAL-AND...) ;; into SB-MATH. ;; * Pull all the array stuff (%ARRAY-DATA-VECTOR, %RAW-REF-LONG, ;; WITH-ARRAY-DATA, ALLOCATE-VECTOR, HAIRY-DATA-VECTOR-REF...) ;; into SB-ARRAY. ;; * Pull all the streams stuff out into SB-STREAM. ;; * Pull all the OBJECT-NOT-FOO symbols out. Maybe we could even ;; figure out a way to stop exporting them? Failing that, ;; they could be in SB-INTERR. #s(sb-cold:package-data :name "SB!KERNEL" :doc "private: Theoretically this 'hides state and types used for package integration' (said CMU CL architecture.tex) and that probably was and is a good idea, but see SB-SYS re. blurring of boundaries." :use ("CL" "SB!ALIEN" "SB!ALIEN-INTERNALS" "SB!BIGNUM" "SB!EXT" "SB!FASL" "SB!INT" "SB!SYS" "SB!GRAY") :reexport ("DEF!STRUCT" "DEF!MACRO") :export ("%ACOS" "%ACOSH" "%ARRAY-AVAILABLE-ELEMENTS" "%ARRAY-DATA-VECTOR" "%ARRAY-DIMENSION" "%ARRAY-DISPLACED-P" "%ARRAY-DISPLACEMENT" "%ARRAY-FILL-POINTER" "%ARRAY-FILL-POINTER-P" "%ASIN" "%ASINH" "%ATAN" "%ATAN2" "%ATANH" "%CALLER-FRAME-AND-PC" "%CHECK-BOUND" "%CHECK-VECTOR-SEQUENCE-BOUNDS" "%CLOSURE-FUN" "%CLOSURE-INDEX-REF" "%COS" "%COS-QUICK" "%COSH" "%DATA-VECTOR-AND-INDEX" "%DEPOSIT-FIELD" "%DOUBLE-FLOAT" "%DPB" "%EXP" "%EXPM1" "%FIND-POSITION" "%FIND-POSITION-VECTOR-MACRO" "%FIND-POSITION-IF" "%FIND-POSITION-IF-VECTOR-MACRO" "%FIND-POSITION-IF-NOT" "%FIND-POSITION-IF-NOT-VECTOR-MACRO" "%FUN-DOC" "%FUN-NAME" "%HYPOT" "%LDB" "%LOG" "%LOGB" "%LOG10" "%LOG1P" #!+long-float "%LONG-FLOAT" "%MAKE-COMPLEX" "%MAKE-FUNCALLABLE-INSTANCE" "%MAKE-RATIO" "%MAP" "%MAP-TO-SIMPLE-VECTOR-ARITY-1" "%MAP-TO-LIST-ARITY-1" "%MAP-TO-NIL-ON-SEQUENCE" "%MAP-TO-NIL-ON-SIMPLE-VECTOR" "%MAP-TO-NIL-ON-VECTOR" "%MASK-FIELD" "%NEGATE" "%POW" "%PUTHASH" "%RAW-BITS" "%RAW-REF-COMPLEX-DOUBLE" "%RAW-REF-COMPLEX-LONG" "%RAW-REF-COMPLEX-SINGLE" "%RAW-REF-DOUBLE" "%RAW-REF-LONG" "%RAW-REF-SINGLE" "%RAW-SET-COMPLEX-DOUBLE" "%RAW-SET-COMPLEX-LONG" "%RAW-SET-COMPLEX-SINGLE" "%RAW-SET-DOUBLE" "%RAW-SET-LONG" "%RAW-SET-SINGLE" "%SCALB" "%SCALBN" "%SET-FUNCALLABLE-INSTANCE-FUN" "%SET-FUNCALLABLE-INSTANCE-INFO" "%SET-RAW-BITS" "%SET-SAP-REF-16" "%SET-SAP-REF-32" "%SET-SAP-REF-64" "%SET-SAP-REF-8" "%SET-SAP-REF-DOUBLE" "%SET-SAP-REF-LONG" "%SET-SAP-REF-SAP" "%SET-SAP-REF-SINGLE" "%SET-SIGNED-SAP-REF-16" "%SET-SIGNED-SAP-REF-32" "%SET-SIGNED-SAP-REF-64" "%SET-SIGNED-SAP-REF-8" "%SET-STACK-REF" "%SIN" "%SIN-QUICK" "%SINGLE-FLOAT" "%SINH" "%SQRT" "%SXHASH-SIMPLE-STRING" "%SXHASH-SIMPLE-SUBSTRING" "%TAN" "%TAN-QUICK" "%TANH" "%UNARY-ROUND" "%UNARY-TRUNCATE" "%WITH-ARRAY-DATA" "%WITH-ARRAY-DATA-MACRO" "*ALREADY-MAYBE-GCING*" "*CURRENT-LEVEL-IN-PRINT*" "*EMPTY-TYPE*" "*GC-INHIBIT*" "*NEED-TO-COLLECT-GARBAGE*" "*CONTROL-STACK-EXHAUSTION-SAP*" "*UNIVERSAL-TYPE*" "*UNIVERSAL-FUN-TYPE*" "*UNPARSE-FUN-TYPE-SIMPLIFY*" "*WILD-TYPE*" "32BIT-LOGICAL-AND" "32BIT-LOGICAL-ANDC1" "32BIT-LOGICAL-ANDC2" "32BIT-LOGICAL-EQV" "32BIT-LOGICAL-NAND" "32BIT-LOGICAL-NOR" "32BIT-LOGICAL-NOT" "32BIT-LOGICAL-OR" "32BIT-LOGICAL-ORC1" "32BIT-LOGICAL-ORC2" "32BIT-LOGICAL-XOR" "ALIEN-TYPE-TYPE" "ALIEN-TYPE-TYPE-ALIEN-TYPE" "ALIEN-TYPE-TYPE-P" "ALLOCATE-VECTOR" "ALWAYS-SUBTYPEP" "ARGS-TYPE" "ARGS-TYPE-ALLOWP" "ARGS-TYPE-KEYP" "ARGS-TYPE-KEYWORDS" "ARGS-TYPE-OPTIONAL" "ARGS-TYPE-P" "ARGS-TYPE-REQUIRED" "ARGS-TYPE-REST" "ARRAY-HEADER-P" "ARRAY-TYPE" "ARRAY-TYPE-COMPLEXP" "ARRAY-TYPE-DIMENSIONS" "ARRAY-TYPE-ELEMENT-TYPE" "ARRAY-TYPE-P" "ARRAY-TYPE-SPECIALIZED-ELEMENT-TYPE" "ASH-INDEX" "ASSERT-ERROR" "BASE-CHAR-P" "BINDING-STACK-POINTER-SAP" "BIT-BASH-COPY" "BIT-INDEX" "BOGUS-ARG-TO-VALUES-LIST-ERROR" "BOOLE-CODE" "BOUNDING-INDICES-BAD-ERROR" "BYTE-SPECIFIER" "%BYTE-BLT" "CALLABLE" "CASE-BODY-ERROR" "CHARPOS" "CHECK-FOR-CIRCULARITY" "CHECK-TYPE-ERROR" "CLOSED-FLAME" "CODE-COMPONENT" "CODE-COMPONENT-P" "CODE-DEBUG-INFO" "CODE-HEADER-REF" "CODE-HEADER-SET" "CODE-INSTRUCTIONS" "COERCE-TO-FUN" "COERCE-TO-LEXENV" "COERCE-TO-LIST" "COERCE-TO-VECTOR" "*COLD-INIT-COMPLETE-P*" "COMPLEX-DOUBLE-FLOAT-P" "COMPLEX-FLOAT-P" #!+long-float "COMPLEX-LONG-FLOAT-P" "COMPLEX-RATIONAL-P" "COMPLEX-SINGLE-FLOAT-P" "COMPLEX-VECTOR-P" "COMPOUND-TYPE" "COMPOUND-TYPE-P" "COMPOUND-TYPE-TYPES" "CONS-TYPE" "CONS-TYPE-CAR-TYPE" "CONS-TYPE-CDR-TYPE" "CONS-TYPE-P" "CONSED-SEQUENCE" "CONSTANT" "CONSTANT-TYPE" "CONSTANT-TYPE-P" "CONSTANT-TYPE-TYPE" "CONTAINING-INTEGER-TYPE" "CONTROL-STACK-POINTER-SAP" "COPY-FROM-SYSTEM-AREA" "COPY-TO-SYSTEM-AREA" "COPY-BYTE-VECTOR-TO-SYSTEM-AREA" "CSUBTYPEP" "CTYPE" "TYPE-HASH-VALUE" "CTYPE-OF" "CTYPE-P" "CTYPEP" "CURRENT-FP" "CURRENT-SP" "CURRENT-DYNAMIC-SPACE-START" "DATA-VECTOR-REF" "DATA-VECTOR-SET" "DECODE-DOUBLE-FLOAT" #!+long-float "DECODE-LONG-FLOAT" "DECODE-SINGLE-FLOAT" "DEFINED-FTYPE-MATCHES-DECLARED-FTYPE-P" "!DEFSTRUCT-WITH-ALTERNATE-METACLASS" "DESCEND-INTO" "DIVISION-BY-ZERO-ERROR" "DOUBLE-FLOAT-EXPONENT" "DOUBLE-FLOAT-HIGH-BITS" "DOUBLE-FLOAT-INT-EXPONENT" "DOUBLE-FLOAT-LOW-BITS" "DOUBLE-FLOAT-SIGNIFICAND" "FLOAT-WAIT" "DYNAMIC-SPACE-FREE-POINTER" "DYNAMIC-USAGE" "EFFECTIVE-FIND-POSITION-TEST" "EFFECTIVE-FIND-POSITION-KEY" "ERROR-NUMBER-OR-LOSE" "FAILED-%WITH-ARRAY-DATA" "FDEFINITION-OBJECT" "FDOCUMENTATION" "FILENAME" "FIND-AND-INIT-OR-CHECK-LAYOUT" "FLOAT-EXPONENT" "FLOAT-FORMAT-DIGITS" "FLOAT-FORMAT-NAME" "FLOAT-FORMAT-MAX" "FLOATING-POINT-EXCEPTION" "FORM" "*FREE-INTERRUPT-CONTEXT-INDEX*" "FUNCALLABLE-INSTANCE-P" "FUN-CODE-HEADER" "FUN-TYPE" "FUN-TYPE-ALLOWP" "FUN-TYPE-KEYP" "FUN-TYPE-KEYWORDS" "FUN-TYPE-NARGS" "FUN-TYPE-OPTIONAL" "FUN-TYPE-P" "FUN-TYPE-REQUIRED" "FUN-TYPE-REST" "FUN-TYPE-RETURNS" "FUN-TYPE-WILD-ARGS" "FUN-WORD-OFFSET" "GET-CLOSURE-LENGTH" "GET-HEADER-DATA" "GET-LISP-OBJ-ADDRESS" "LOWTAG-OF" "WIDETAG-OF" "HAIRY-DATA-VECTOR-REF" "HAIRY-DATA-VECTOR-SET" "HAIRY-TYPE" "HAIRY-TYPE-CHECK-TEMPLATE-NAME" "HAIRY-TYPE-SPECIFIER" "HANDLE-CIRCULARITY" "HOST" "IGNORE-IT" "ILL-BIN" "ILL-BOUT" "ILL-IN" "ILL-OUT" "INDEX-OR-MINUS-1" "INDEX-TOO-LARGE-ERROR" "*!INITIAL-ASSEMBLER-ROUTINES*" "*!INITIAL-FDEFN-OBJECTS*" "*!INITIAL-FOREIGN-SYMBOLS*" "*!INITIAL-LAYOUTS*" "*!INITIAL-SYMBOLS*" "INTEGER-DECODE-DOUBLE-FLOAT" #!+long-float "INTEGER-DECODE-LONG-FLOAT" "INTEGER-DECODE-SINGLE-FLOAT" "INTERNAL-ERROR" "INTERNAL-TIME" "INTERSECTION-TYPE" "INTERSECTION-TYPE-P" "INTERSECTION-TYPE-TYPES" "INVALID-ARG-COUNT-ERROR" "INVALID-ARRAY-INDEX-ERROR" "INVALID-UNWIND-ERROR" "IRRATIONAL" "JUST-DUMP-IT-NORMALLY" "KEY-INFO" "KEY-INFO-NAME" "KEY-INFO-P" "KEY-INFO-TYPE" "LAYOUT-DEPTHOID" "LAYOUT-INVALID-ERROR" "LEXENV" "LEXENV-DESIGNATOR" "LINE-LENGTH" "ANSI-STREAM" "ANSI-STREAM-BIN" "ANSI-STREAM-BOUT" "ANSI-STREAM-CLOSE" "ANSI-STREAM-ELEMENT-TYPE" "ANSI-STREAM-IN" "ANSI-STREAM-IN-BUFFER" "ANSI-STREAM-IN-INDEX" "ANSI-STREAM-INPUT-STREAM-P" "ANSI-STREAM-MISC" "ANSI-STREAM-N-BIN" "ANSI-STREAM-OPEN-STREAM-P" "ANSI-STREAM-OUT" "ANSI-STREAM-SOUT" "ANSI-STREAM-OUTPUT-STREAM-P" "LIST-TO-VECTOR*" "LOGICAL-HOST" "LOGICAL-HOST-DESIGNATOR" #!+long-float "LONG-FLOAT-EXPONENT" #!+long-float "LONG-FLOAT-EXP-BITS" #!+long-float "LONG-FLOAT-HIGH-BITS" #!+long-float "LONG-FLOAT-LOW-BITS" #!+long-float "LONG-FLOAT-MID-BITS" "LONG-WORDS" "LRA" "LRA-CODE-HEADER" "LRA-P" "MAKE-ALIEN-TYPE-TYPE" "MAKE-ARGS-TYPE" "MAKE-ARRAY-HEADER" "MAKE-ARRAY-TYPE" "MAKE-CONS-TYPE" "MAKE-DOUBLE-FLOAT" "MAKE-FUN-TYPE" "MAKE-KEY-INFO" "MAKE-LISP-OBJ" #!+long-float "MAKE-LONG-FLOAT" "MAKE-MEMBER-TYPE" "MAKE-NAMED-TYPE" "MAKE-NULL-LEXENV" "MAKE-NULL-INTERACTIVE-LEXENV" "MAKE-NUMERIC-TYPE" "MAKE-SINGLE-FLOAT" "MAKE-SPECIALIZABLE-ARRAY" "%MAKE-INSTANCE" "MAKE-VALUE-CELL" "MAKE-VALUES-TYPE" "MEMBER-TYPE" "MEMBER-TYPE-MEMBERS" "MEMBER-TYPE-P" "MERGE-BITS" "MODIFIED-NUMERIC-TYPE" "MUTATOR-SELF" "NAMED-TYPE" "NAMED-TYPE-NAME" "NAMED-TYPE-P" "NATIVE-BYTE-ORDER" "NEGATE" "NEGATION-TYPE" "NEGATION-TYPE-TYPE" "NEVER-SUBTYPEP" "NIL-ARRAY-ACCESSED-ERROR" "NIL-FUN-RETURNED-ERROR" "NOT-<=-ERROR" "NOT-=-ERROR" "NOT-DUMPED-AT-ALL" "NUMERIC-CONTAGION" "NUMERIC-TYPE" "NUMERIC-TYPE-CLASS" "NUMERIC-TYPE-COMPLEXP" "NUMERIC-TYPE-FORMAT" "NUMERIC-TYPE-HIGH" "NUMERIC-TYPE-LOW" "NUMERIC-TYPE-P" "OBJECT-NOT-ARRAY-ERROR" "OBJECT-NOT-BASE-CHAR-ERROR" "OBJECT-NOT-BIGNUM-ERROR" "OBJECT-NOT-BIT-VECTOR-ERROR" "OBJECT-NOT-COMPLEX-ERROR" "OBJECT-NOT-COMPLEX-FLOAT-ERROR" "OBJECT-NOT-COMPLEX-SINGLE-FLOAT-ERROR" #!+long-float "OBJECT-NOT-COMPLEX-LONG-FLOAT-ERROR" "OBJECT-NOT-COMPLEX-DOUBLE-FLOAT-ERROR" "OBJECT-NOT-COMPLEX-RATIONAL-ERROR" ;; FIXME: It's confusing using "complex" to mean ;; both "not on the real number line" and "not of ;; a SIMPLE-ARRAY nature". Perhaps we could rename ;; all the uses in the second sense as "hairy" instead? "OBJECT-NOT-COMPLEX-VECTOR-ERROR" "OBJECT-NOT-CONS-ERROR" "OBJECT-NOT-DOUBLE-FLOAT-ERROR" "OBJECT-NOT-FIXNUM-ERROR" "OBJECT-NOT-FLOAT-ERROR" "OBJECT-NOT-FUN-ERROR" "OBJECT-NOT-INSTANCE-ERROR" "OBJECT-NOT-INTEGER-ERROR" "OBJECT-NOT-LIST-ERROR" #!+long-float "OBJECT-NOT-LONG-FLOAT-ERROR" "OBJECT-NOT-NUMBER-ERROR" "OBJECT-NOT-RATIO-ERROR" "OBJECT-NOT-RATIONAL-ERROR" "OBJECT-NOT-REAL-ERROR" "OBJECT-NOT-SAP-ERROR" "OBJECT-NOT-SIGNED-BYTE-32-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-ERROR" #!+long-float "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-DOUBLE-FLOAT-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-ERROR" #!+long-float "OBJECT-NOT-SIMPLE-ARRAY-LONG-FLOAT-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-NIL-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-SINGLE-FLOAT-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-16-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-2-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-32-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-4-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-UNSIGNED-BYTE-8-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-16-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-30-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-32-ERROR" "OBJECT-NOT-SIMPLE-ARRAY-SIGNED-BYTE-8-ERROR" "OBJECT-NOT-SIMPLE-BIT-VECTOR-ERROR" "OBJECT-NOT-SIMPLE-STRING-ERROR" "OBJECT-NOT-SIMPLE-VECTOR-ERROR" "OBJECT-NOT-SINGLE-FLOAT-ERROR" "OBJECT-NOT-STRING-ERROR" "OBJECT-NOT-INSTANCE-ERROR" "OBJECT-NOT-SYMBOL-ERROR" "OBJECT-NOT-TYPE-ERROR" "OBJECT-NOT-UNSIGNED-BYTE-32-ERROR" "OBJECT-NOT-VECTOR-ERROR" "OBJECT-NOT-WEAK-POINTER-ERROR" "ODD-KEY-ARGS-ERROR" "OUTPUT-OBJECT" "OUTPUT-UGLY-OBJECT" "PACKAGE-DOC-STRING" "PACKAGE-HASHTABLE-SIZE" "PACKAGE-HASHTABLE-FREE" "PACKAGE-INTERNAL-SYMBOLS" "PACKAGE-EXTERNAL-SYMBOLS" "PARSE-DEFMACRO" "PARSE-UNKNOWN-TYPE" "PARSE-UNKNOWN-TYPE-SPECIFIER" "PATHNAME-DESIGNATOR" #!+x86 "*PSEUDO-ATOMIC-ATOMIC*" #!+x86 "*PSEUDO-ATOMIC-INTERRUPTED*" "PUNT-PRINT-IF-TOO-LONG" "READER-IMPOSSIBLE-NUMBER-ERROR" "READER-PACKAGE-ERROR" "SCALE-DOUBLE-FLOAT" #!+long-float "SCALE-LONG-FLOAT" "SCALE-SINGLE-FLOAT" "SEQUENCE-COUNT" "SEQUENCE-END" "SEQUENCE-OF-CHECKED-LENGTH-GIVEN-TYPE" "SET-ARRAY-HEADER" "SET-HEADER-DATA" "SHIFT-TOWARDS-END" "SHIFT-TOWARDS-START" "SHRINK-VECTOR" "SIGNED-BYTE-32-P" "SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-P" #!+long-float "SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-P" "SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-P" "SIMPLE-ARRAY-DOUBLE-FLOAT-P" #!+long-float "SIMPLE-ARRAY-LONG-FLOAT-P" "SIMPLE-ARRAY-NIL-P" "SIMPLE-ARRAY-P" "SIMPLE-ARRAY-SINGLE-FLOAT-P" "SIMPLE-ARRAY-UNSIGNED-BYTE-16-P" "SIMPLE-ARRAY-UNSIGNED-BYTE-2-P" "SIMPLE-ARRAY-UNSIGNED-BYTE-32-P" "SIMPLE-ARRAY-UNSIGNED-BYTE-4-P" "SIMPLE-ARRAY-UNSIGNED-BYTE-8-P" "SIMPLE-ARRAY-SIGNED-BYTE-16-P" "SIMPLE-ARRAY-SIGNED-BYTE-30-P" "SIMPLE-ARRAY-SIGNED-BYTE-32-P" "SIMPLE-ARRAY-SIGNED-BYTE-8-P" "SIMPLE-PACKAGE-ERROR" "SIMPLE-UNBOXED-ARRAY" "SINGLE-FLOAT-BITS" "SINGLE-FLOAT-EXPONENT" "SINGLE-FLOAT-INT-EXPONENT" "SINGLE-FLOAT-SIGNIFICAND" "SINGLE-VALUE-TYPE" "SINGLE-VALUE-SPECIFIER-TYPE" "SPECIALIZABLE" "SPECIALIZABLE-VECTOR" "SPECIFIER-TYPE" "STACK-REF" "STREAMLIKE" "STRINGABLE" "STRUCTURE-RAW-SLOT-TYPE-AND-SIZE" "SUB-GC" "%INSTANCE-LENGTH" "%INSTANCE-REF" "%INSTANCE-SET" "SYSTEM-AREA-CLEAR" "SYSTEM-AREA-COPY" "TWO-ARG-*" "TWO-ARG-+" "TWO-ARG--" "TWO-ARG-/" "TWO-ARG-/=" "TWO-ARG-<" "TWO-ARG-<=" "TWO-ARG-=" "TWO-ARG->" "TWO-ARG->=" "TWO-ARG-AND" "TWO-ARG-GCD" "TWO-ARG-IOR" "TWO-ARG-LCM" "TWO-ARG-XOR" "TYPE-DIFFERENCE" "TYPE-EXPAND" "TYPE-INTERSECTION" "TYPE-INTERSECTION2" "TYPE-APPROX-INTERSECTION2" "TYPE-SPECIFIER" "TYPE-UNION" "TYPE/=" "TYPE=" "TYPES-EQUAL-OR-INTERSECT" "UNBOUND-SYMBOL-ERROR" "UNBOXED-ARRAY" "UNDEFINED-FUN-ERROR" "UNION-TYPE" "UNION-TYPE-P" "UNION-TYPE-TYPES" "UNKNOWN-ERROR" "UNKNOWN-KEY-ARG-ERROR" "UNKNOWN-TYPE" "UNKNOWN-TYPE-P" "UNKNOWN-TYPE-SPECIFIER" "UNSEEN-THROW-TAG-ERROR" "UNSIGNED-BYTE-32-P" "VALUE-CELL-REF" "VALUE-CELL-SET" "VALUES-SPECIFIER-TYPE" "VALUES-SPECIFIER-TYPE-CACHE-CLEAR" "VALUES-SUBTYPEP" "VALUES-TYPE" "VALUES-TYPE-INTERSECTION" "VALUES-TYPE-KEYP" "VALUES-TYPE-KEYWORDS" "VALUES-TYPE-OPTIONAL" "VALUES-TYPE-P" "VALUES-TYPE-REQUIRED" "VALUES-TYPE-REST" "VALUES-TYPE-UNION" "VALUES-TYPES" "VALUES-TYPES-EQUAL-OR-INTERSECT" "VECTOR-T-P" "VECTOR-TO-VECTOR*" "VECTOR-OF-CHECKED-LENGTH-GIVEN-LENGTH" "WITH-ARRAY-DATA" "WRONG-NUMBER-OF-INDICES-ERROR" "FDEFN" "MAKE-FDEFN" "FDEFN-P" "FDEFN-NAME" "FDEFN-FUN" "FDEFN-MAKUNBOUND" "OUTER-FDEFN" "%COERCE-CALLABLE-TO-FUN" "FUN-SUBTYPE" "*MAXIMUM-ERROR-DEPTH*" "%SET-SYMBOL-PLIST" "INFINITE-ERROR-PROTECT" "FIND-CALLER-NAME-AND-FRAME" "%SET-SYMBOL-VALUE" "%SET-SYMBOL-PACKAGE" "OUTPUT-SYMBOL-NAME" "%COERCE-NAME-TO-FUN" "INVOKE-MACROEXPAND-HOOK" "DEFAULT-STRUCTURE-PRINT" "LAYOUT" "LAYOUT-LENGTH" "LAYOUT-PURE" "DSD-RAW-TYPE" "DEFSTRUCT-DESCRIPTION" "UNDEFINE-STRUCTURE" "DD-COPIER" "UNDEFINE-FUN-NAME" "DD-TYPE" "CLASSOID-STATE" "INSTANCE" "*TYPE-SYSTEM-INITIALIZED*" "FIND-LAYOUT" "DSD-NAME" "%TYPEP" "DD-RAW-INDEX" "DD-NAME" "CLASSOID-SUBCLASSES" "CLASSOID-LAYOUT" "CLASSOID-NAME" "DD-RAW-LENGTH" "NOTE-NAME-DEFINED" "%CODE-CODE-SIZE" "DD-SLOTS" "DD-INCLUDE" "%IMAGPART" "DSD-ACCESSOR-NAME" "%CODE-DEBUG-INFO" "DSD-%NAME" "LAYOUT-CLASSOID" "LAYOUT-INVALID" "%SIMPLE-FUN-NAME" "DSD-TYPE" "%INSTANCEP" "DEFSTRUCT-SLOT-DESCRIPTION" "%SIMPLE-FUN-ARGLIST" "%SIMPLE-FUN-NEXT" "LAYOUT-CLOS-HASH-LENGTH" "DD-PREDICATE-NAME" "CLASSOID-PROPER-NAME" "%NOTE-TYPE-DEFINED" "LAYOUT-INFO" "%SET-INSTANCE-LAYOUT" "DD-DEFAULT-CONSTRUCTOR" "LAYOUT-OF" "%SIMPLE-FUN-SELF" "%REALPART" "STRUCTURE-CLASSOID-P" "DSD-INDEX" "STRUCTURE-CLASSOID" "%INSTANCE-LAYOUT" "LAYOUT-CLOS-HASH" "%SIMPLE-FUN-TYPE" "PROCLAIM-AS-FUN-NAME" "BECOME-DEFINED-FUN-NAME" "%NUMERATOR" "CLASSOID-TYPEP" "DSD-READ-ONLY" "DSD-DEFAULT" "LAYOUT-INHERITS" "DD-LENGTH" "%CODE-ENTRY-POINTS" "%DENOMINATOR" "STANDARD-CLASSOID" "CLASSOID-OF" "MAKE-STANDARD-CLASSOID" "CLASSOID-CELL-TYPEP" "FIND-CLASSOID-CELL" "EXTRACT-FUN-TYPE" "FUNCALLABLE-STRUCTURE-CLASSOID" "%RANDOM-DOUBLE-FLOAT" #!+long-float "%RANDOM-LONG-FLOAT" "%RANDOM-SINGLE-FLOAT" "RANDOM-PCL-CLASSOID" "%FUNCALLABLE-INSTANCE-INFO" "RANDOM-CHUNK" "MAKE-FUNCALLABLE-STRUCTURE-CLASSOID" "LAYOUT-CLOS-HASH-MAX" "CLASSOID-CELL-NAME" "BUILT-IN-CLASSOID-DIRECT-SUPERCLASSES" "BUILT-IN-CLASSOID-TRANSLATION" "RANDOM-LAYOUT-CLOS-HASH" "CLASSOID-PCL-CLASS" "FUNCALLABLE-STRUCTURE" "FUNCALLABLE-INSTANCE-FUN" "%FUNCALLABLE-INSTANCE-LAYOUT" "BASIC-STRUCTURE-CLASSOID" "CLASSOID-CELL-CLASSOID" "FUNCALLABLE-STRUCTURE-CLASSOID-P" "REGISTER-LAYOUT" "FUNCALLABLE-INSTANCE" "RANDOM-FIXNUM-MAX" "MAKE-RANDOM-PCL-CLASSOID" "INSTANCE-LAMBDA" "%FUNCALLABLE-INSTANCE-LEXENV" "%MAKE-SYMBOL" "%FUNCALLABLE-INSTANCE-FUN" "SYMBOL-HASH" "BUILT-IN-CLASSOID" "CONDITION-CLASSOID-P" "MAKE-UNDEFINED-CLASSOID" "FIND-CLASSOID" "CLASSOID" "CLASSOID-DIRECT-SUPERCLASSES" "MAKE-LAYOUT" "REDEFINE-LAYOUT-WARNING" "SLOT-CLASSOID" "INSURED-FIND-CLASSOID" "ORDER-LAYOUT-INHERITS" "STD-COMPUTE-CLASS-PRECEDENCE-LIST" ;; symbols from former SB!CONDITIONS "*HANDLER-CLUSTERS*" "*RESTART-CLUSTERS*" "SHOW-CONDITION" "CASE-FAILURE" "NAMESTRING-PARSE-ERROR" "NAMESTRING-PARSE-ERROR-OFFSET" "DESCRIBE-CONDITION" "!COLD-INIT" "!UNINTERN-INIT-ONLY-STUFF" "!GLOBALDB-COLD-INIT" "!FDEFN-COLD-INIT" "!TYPE-CLASS-COLD-INIT" "!TYPEDEFS-COLD-INIT" "!ALIEN-TYPE-COLD-INIT" "!CLASSES-COLD-INIT" "!EARLY-TYPE-COLD-INIT" "!LATE-TYPE-COLD-INIT" "!TARGET-TYPE-COLD-INIT" "!RANDOM-COLD-INIT" "!READER-COLD-INIT" "!TYPECHECKFUNS-COLD-INIT" "STREAM-COLD-INIT-OR-RESET" "!LOADER-COLD-INIT" "!EXHAUST-COLD-INIT" "!PACKAGE-COLD-INIT" "SIGNAL-COLD-INIT-OR-REINIT" "!POLICY-COLD-INIT-OR-RESANIFY" "!VM-TYPE-COLD-INIT" "!BACKQ-COLD-INIT" "!SHARPM-COLD-INIT" "!CLASS-FINALIZE" "GC-REINIT" ;; Note: These are out of lexicographical order because in CMU CL ;; they were defined as internal symbols in package "CL" ;; imported into package "C", as opposed to what we're ;; doing here, defining them as external symbols in a package ;; which is used by both "SB!C" and "SB!IMPL". (SBCL's "SB!C" is ;; directly analogous to CMU CL's "C"; and for this purpose, ;; SBCL's "SB!IMPL" is analogous to CMU CL's "CL".) As far ;; as I know there's nothing special about them, so they could ;; be merged into the same order as everything else in the ;; in this package. -- WHN 19990911 "STRING>=*" "STRING>*" "STRING=*" "STRING<=*" "STRING<*" "STRING/=*" "%SVSET" "%SP-STRING-COMPARE" "%SETNTH" "%SETELT" "%SET-ROW-MAJOR-AREF" "%SET-FILL-POINTER" "%SET-FDEFINITION" "%SCHARSET" "%SBITSET" "%RPLACD" "%RPLACA" "%PUT" "%CHARSET" "%BITSET" "%ASET" "%ARRAY-TYPEP" "%SET-SAP-REF-DESCRIPTOR")) #s(sb-cold:package-data :name "SB!THREAD" :use ("CL" "SB!ALIEN") :doc "public (but low-level): native thread support" :export ("MAKE-THREAD" "MAKE-LISTENER-THREAD" "DESTROY-THREAD" "WITH-RECURSIVE-LOCK" "MUTEX" "MAKE-MUTEX" "GET-MUTEX" "RELEASE-MUTEX" "WITH-MUTEX" "WAITQUEUE" "MAKE-WAITQUEUE" "CONDITION-WAIT" "CONDITION-NOTIFY" "WITH-RECURSIVE-LOCK" "RELEASE-FOREGROUND" "CURRENT-THREAD-ID")) #s(sb-cold:package-data :name "SB!LOOP" :doc "private: implementation details of LOOP" :use ("CL") :export ()) #s(sb-cold:package-data :name "SB!MOP" :doc "public: the MetaObject Protocol interface, as defined by The Art of the Metaobject Protocol, by Kiczales, des Rivieres and Bobrow: ISBN 0-262-61074-4, with exceptions as noted in the User Manual." :use ("CL" "SB!PCL") :reexport ("ADD-DEPENDENT" "ADD-DIRECT-METHOD" "ADD-DIRECT-SUBCLASS" "ADD-METHOD" "ALLOCATE-INSTANCE" "BUILT-IN-CLASS" "CLASS" "CLASS-DEFAULT-INITARGS" "CLASS-DIRECT-DEFAULT-INITARGS" "CLASS-DIRECT-SLOTS" "CLASS-DIRECT-SUBCLASSES" "CLASS-DIRECT-SUPERCLASSES" "CLASS-FINALIZED-P" "CLASS-NAME" "CLASS-PRECEDENCE-LIST" "CLASS-PROTOTYPE" "CLASS-SLOTS" "COMPUTE-APPLICABLE-METHODS" "COMPUTE-APPLICABLE-METHODS-USING-CLASSES" "COMPUTE-CLASS-PRECEDENCE-LIST" "COMPUTE-DEFAULT-INITARGS" "COMPUTE-DISCRIMINATING-FUNCTION" "COMPUTE-EFFECTIVE-METHOD" "COMPUTE-EFFECTIVE-SLOT-DEFINITION" "COMPUTE-SLOTS" "DIRECT-SLOT-DEFINITION" "DIRECT-SLOT-DEFINITION-CLASS" "EFFECTIVE-SLOT-DEFINITION" "EFFECTIVE-SLOT-DEFINITION-CLASS" "ENSURE-CLASS" "ENSURE-CLASS-USING-CLASS" "ENSURE-GENERIC-FUNCTION" "ENSURE-GENERIC-FUNCTION-USING-CLASS" "EQL-SPECIALIZER" "EQL-SPECIALIZER-OBJECT" "EXTRACT-LAMBDA-LIST" "EXTRACT-SPECIALIZER-NAMES" "FINALIZE-INHERITANCE" "FIND-METHOD-COMBINATION" "FORWARD-REFERENCED-CLASS" "FUNCALLABLE-STANDARD-CLASS" "FUNCALLABLE-STANDARD-INSTANCE-ACCESS" "FUNCALLABLE-STANDARD-OBJECT" "FUNCTION" "GENERIC-FUNCTION" "GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER" "GENERIC-FUNCTION-DECLARATIONS" "GENERIC-FUNCTION-LAMBDA-LIST" "GENERIC-FUNCTION-METHOD-CLASS" "GENERIC-FUNCTION-METHOD-COMBINATION" "GENERIC-FUNCTION-METHODS" "GENERIC-FUNCTION-NAME" "INTERN-EQL-SPECIALIZER" "MAKE-METHOD-LAMBDA" "MAKE-INSTANCE" "MAP-DEPENDENTS" ;; KLUDGE: See the User Manual ;; "METAOBJECT" "METHOD" "METHOD-COMBINATION" "METHOD-FUNCTION" "METHOD-GENERIC-FUNCTION" "METHOD-LAMBDA-LIST" "METHOD-QUALIFIERS" "METHOD-SPECIALIZERS" "ACCESSOR-METHOD-SLOT-DEFINITION" "READER-METHOD-CLASS" "REMOVE-DEPENDENT" "REMOVE-DIRECT-METHOD" "REMOVE-DIRECT-SUBCLASS" "REMOVE-METHOD" "SET-FUNCALLABLE-INSTANCE-FUNCTION" "SLOT-BOUNDP-USING-CLASS" "SLOT-DEFINITION" "SLOT-DEFINITION-ALLOCATION" "SLOT-DEFINITION-INITARGS" "SLOT-DEFINITION-INITFORM" "SLOT-DEFINITION-INITFUNCTION" "SLOT-DEFINITION-LOCATION" "SLOT-DEFINITION-NAME" "SLOT-DEFINITION-READERS" "SLOT-DEFINITION-WRITERS" "SLOT-DEFINITION-TYPE" "SLOT-MAKUNBOUND-USING-CLASS" "SLOT-VALUE-USING-CLASS" "SPECIALIZER" "SPECIALIZER-DIRECT-GENERIC-FUNCTIONS" "SPECIALIZER-DIRECT-METHODS" "STANDARD-ACCESSOR-METHOD" "STANDARD-CLASS" "STANDARD-DIRECT-SLOT-DEFINITION" "STANDARD-EFFECTIVE-SLOT-DEFINITION" "STANDARD-GENERIC-FUNCTION" "STANDARD-INSTANCE-ACCESS" "STANDARD-METHOD" "STANDARD-OBJECT" "STANDARD-READER-METHOD" "STANDARD-SLOT-DEFINITION" "STANDARD-WRITER-METHOD" "T" "UPDATE-DEPENDENT" "VALIDATE-SUPERCLASS" "WRITER-METHOD-CLASS")) #s(sb-cold:package-data :name "SB!PCL" :doc "semi-public: This package includes useful meta-object protocol extensions, but even they are not guaranteed to be present in later versions of SBCL, and the other stuff in here is definitely not guaranteed to be present in later versions of SBCL." :use ("CL" "SB!INT" "SB!EXT" "SB!WALKER" "SB!KERNEL") ;; FIXME: After a little while, these reexports can probably go ;; away, as they're superseded by the use of SB-MOP as the ;; publically-accessible package. :reexport ("ADD-METHOD" "ALLOCATE-INSTANCE" "CLASS-NAME" "COMPUTE-APPLICABLE-METHODS" "ENSURE-GENERIC-FUNCTION" "MAKE-INSTANCE" "METHOD-QUALIFIERS" "REMOVE-METHOD") :export ("ADD-DEPENDENT" "ADD-DIRECT-METHOD" "ADD-DIRECT-SUBCLASS" "CLASS-DEFAULT-INITARGS" "CLASS-DIRECT-DEFAULT-INITARGS" "CLASS-DIRECT-SLOTS" "CLASS-DIRECT-SUBCLASSES" "CLASS-DIRECT-SUPERCLASSES" "CLASS-FINALIZED-P" "CLASS-PRECEDENCE-LIST" "CLASS-PROTOTYPE" "CLASS-SLOTS" "COMPUTE-APPLICABLE-METHODS-USING-CLASSES" "COMPUTE-CLASS-PRECEDENCE-LIST" "COMPUTE-DEFAULT-INITARGS" "COMPUTE-DISCRIMINATING-FUNCTION" "COMPUTE-EFFECTIVE-METHOD" "COMPUTE-EFFECTIVE-SLOT-DEFINITION" "COMPUTE-SLOTS" "DIRECT-SLOT-DEFINITION" "DIRECT-SLOT-DEFINITION-CLASS" "EFFECTIVE-SLOT-DEFINITION" "EFFECTIVE-SLOT-DEFINITION-CLASS" "ENSURE-CLASS" "ENSURE-CLASS-USING-CLASS" "ENSURE-GENERIC-FUNCTION-USING-CLASS" "EQL-SPECIALIZER" "EQL-SPECIALIZER-OBJECT" "EXTRACT-LAMBDA-LIST" "EXTRACT-SPECIALIZER-NAMES" "FINALIZE-INHERITANCE" "FIND-METHOD-COMBINATION" "FORWARD-REFERENCED-CLASS" "FUNCALLABLE-STANDARD-CLASS" "FUNCALLABLE-STANDARD-INSTANCE-ACCESS" "FUNCALLABLE-STANDARD-OBJECT" "GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER" "GENERIC-FUNCTION-DECLARATIONS" "GENERIC-FUNCTION-LAMBDA-LIST" "GENERIC-FUNCTION-METHOD-CLASS" "GENERIC-FUNCTION-METHOD-COMBINATION" "GENERIC-FUNCTION-METHODS" "GENERIC-FUNCTION-NAME" "INTERN-EQL-SPECIALIZER" "MAKE-METHOD-LAMBDA" "MAP-DEPENDENTS" "METHOD-FUNCTION" "METHOD-GENERIC-FUNCTION" "METHOD-LAMBDA-LIST" "METHOD-SPECIALIZERS" "ACCESSOR-METHOD-SLOT-DEFINITION" "READER-METHOD-CLASS" "REMOVE-DEPENDENT" "REMOVE-DIRECT-METHOD" "REMOVE-DIRECT-SUBCLASS" "SET-FUNCALLABLE-INSTANCE-FUNCTION" "SLOT-BOUNDP-USING-CLASS" "SLOT-DEFINITION" "SLOT-DEFINITION-ALLOCATION" "SLOT-DEFINITION-INITARGS" "SLOT-DEFINITION-INITFORM" "SLOT-DEFINITION-INITFUNCTION" "SLOT-DEFINITION-LOCATION" "SLOT-DEFINITION-NAME" "SLOT-DEFINITION-READERS" "SLOT-DEFINITION-WRITERS" "SLOT-DEFINITION-TYPE" "SLOT-MAKUNBOUND-USING-CLASS" "SLOT-VALUE-USING-CLASS" "SPECIALIZER" "SPECIALIZER-DIRECT-GENERIC-FUNCTIONS" "SPECIALIZER-DIRECT-METHODS" "STANDARD-ACCESSOR-METHOD" "STANDARD-DIRECT-SLOT-DEFINITION" "STANDARD-EFFECTIVE-SLOT-DEFINITION" "STANDARD-INSTANCE-ACCESS" "STANDARD-READER-METHOD" "STANDARD-SLOT-DEFINITION" "STANDARD-WRITER-METHOD" "UPDATE-DEPENDENT" "VALIDATE-SUPERCLASS" "WRITER-METHOD-CLASS")) #s(sb-cold:package-data :name "SB!PRETTY" :doc "private: implementation of pretty-printing" :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL") :export ("OUTPUT-PRETTY-OBJECT" "PRETTY-STREAM" "PRETTY-STREAM-P" "!PPRINT-COLD-INIT")) #s(sb-cold:package-data :name "SB!PROFILE" :doc "public: the interface to the profiler" :use ("CL" "SB!EXT" "SB!INT" "SB!KERNEL") :export ("PROFILE" "REPORT" "RESET" "UNPROFILE")) #s(sb-cold:package-data :name "SB!SYS" :doc "private: In theory, this \"contains functions and information necessary for system interfacing\" (said cmu-user.tex at the time of the SBCL code fork). That probably was and is a good idea, but in practice, the distinctions between this package and SB-KERNEL and even SB-VM seem to have become somewhat blurred over the years. Some anomalies (e.g. FIND-IF-IN-CLOSURE being in SB-SYS instead of SB-KERNEL) have been undone, but probably more remain." :use ("CL" "SB!EXT" "SB!INT") :export ("%ASSEMBLER-CODE-TYPE" "%BIND-ALIGNED-SAP" ;; FIXME: %PRIMITIVE shouldn't be here. (I now know that %SYS ;; is for OS-dependent stuff. %PRIMITIVE should probably be in ;; SB!KERNEL.) "%PRIMITIVE" "%STANDARD-CHAR-P" "*LONG-SITE-NAME*" "*SHORT-SITE-NAME*" "*STDERR*" "*STDIN*" "*STDOUT*" "*TASK-DATA*" "*TASK-NOTIFY*" "*TASK-SELF*" "*TTY*" "*TYPESCRIPTPORT*" "ADD-FD-HANDLER" "ALLOCATE-SYSTEM-MEMORY" "BEEP" "BITS" "BYTES" "C-PROCEDURE" "COMPILER-VERSION" "DEALLOCATE-SYSTEM-MEMORY" "DEFAULT-INTERRUPT" "DEPORT-BOOLEAN" "DEPORT-INTEGER" "FROB-DO-BODY" "ENABLE-INTERRUPT" "ENUMERATION" "FD-STREAM-FD" "FD-STREAM-P" "FOREIGN-SYMBOL-ADDRESS" "FOREIGN-SYMBOL-ADDRESS-AS-INTEGER" "GET-PAGE-SIZE" "GET-SYSTEM-INFO" "IGNORE-INTERRUPT" "INT-SAP" "INVALIDATE-DESCRIPTOR" "IO-TIMEOUT" "MACRO" "MAKE-FD-STREAM" "MAKE-OBJECT-SET" "MEMMOVE" "NATURALIZE-BOOLEAN" "NATURALIZE-INTEGER" "OBJECT-SET-OPERATION" "OS-COLD-INIT-OR-REINIT" "OS-CONTEXT-T" "OUTPUT-RAW-BYTES" "POINTER" "POINTER<" "POINTER>" "READ-N-BYTES" "REALLOCATE-SYSTEM-MEMORY" "RECORD-SIZE" "REMOVE-FD-HANDLER" "RESOLVE-LOADED-ASSEMBLER-REFERENCES" "SAP+" "SAP-" "SAP-INT" "SAP-REF-16" "SAP-REF-32" "SAP-REF-64" "SAP-REF-8" "SAP-REF-DESCRIPTOR" "SAP-REF-DOUBLE" "SAP-REF-LONG" "SAP-REF-SAP" "SAP-REF-SINGLE" "SAP<" "SAP<=" "SAP=" "SAP>" "SAP>=" "SCRUB-CONTROL-STACK" "SERVE-ALL-EVENTS" "SERVE-EVENT" "SERVER" "SERVER-MESSAGE" "SIGNED-SAP-REF-16" "SIGNED-SAP-REF-32" "SIGNED-SAP-REF-64" "SIGNED-SAP-REF-8" ;; FIXME: STRUCTURE!OBJECT stuff probably belongs in SB!KERNEL. "STRUCTURE!OBJECT" "STRUCTURE!OBJECT-MAKE-LOAD-FORM" "SYSTEM-AREA-POINTER" "SYSTEM-AREA-POINTER-P" "VECTOR-SAP" "WAIT-UNTIL-FD-USABLE" "WITH-ENABLED-INTERRUPTS" "WITH-FD-HANDLER" "WITH-INTERRUPTS" "WITHOUT-GCING" "WITHOUT-INTERRUPTS" "WORDS" "ALLOCATE-SYSTEM-MEMORY-AT" "GET-DYNAMIC-FOREIGN-SYMBOL-ADDRESS")) #s(sb-cold:package-data :name "SB!UNIX" :doc "private: a wrapper layer for SBCL itself to use when talking with an underlying Unix-y operating system. This was a public package in CMU CL, but that was different. CMU CL's UNIX package tried to provide a comprehensive, stable Unix interface suitable for the end user. This package only tries to implement what happens to be needed by the current implementation of SBCL, and makes no guarantees of interface stability." :use ("CL" "SB!ALIEN" "SB!EXT" "SB!INT" "SB!SYS") :export (;; wrappers around Unix stuff to give just what Lisp needs "UID-USERNAME" "UID-HOMEDIR" ;; stuff with a one-to-one mapping to Unix constructs "D-INO" "D-NAME" "D-NAMLEN" "D-OFF" "D-RECLEN" "DEV-T" "DIRECT" "EXECGRP" "EXECOTH" "EXECOWN" "F-DUPFD" "F-GETFD" "F-GETFL" "F-GETOWN" "F-SETFD" "F-SETFL" "F-SETOWN" "FAPPEND" "FASYNC" "FCREAT" "FEXCL" "FIONREAD" "FNDELAY" "FTRUNC" "F_OK" "GID-T" "INO-T" "UNIX-SETITIMER" "UNIX-GETITIMER" "KBDCGET" "KBDCRESET" "KBDCRST" "KBDCSET" "KBDCSSTD" "KBDGCLICK" "KBDSCLICK" "KBDSGET" "L_INCR" "L_SET" "L_XTND" "OFF-T" "O_APPEND" "O_CREAT" "O_EXCL" "O_RDONLY" "O_RDWR" "O_TRUNC" "O_WRONLY" "POSIX-GETCWD" "POSIX-GETCWD/" "READGRP" "READOTH" "READOWN" "RLIM-CUR" "RLIM-MAX" "RU-IDRSS" "RU-INBLOCK" "RU-ISRSS" "RU-IXRSS" "RU-MAJFLT" "RU-MAXRSS" "RU-MINFLT" "RU-MSGRCV" "RU-MSGSND" "RU-NIVCSW" "RU-NSIGNALS" "RU-NSWAP" "RU-NVCSW" "RU-OUBLOCK" "RU-STIME" "RU-UTIME" "RUSAGE_CHILDREN" "RUSAGE_SELF" "RUSEAGE" "R_OK" "S-IEXEC" "S-IFBLK" "S-IFCHR" "S-IFDIR" "S-IFLNK" "S-IFMT" "S-IFREG" "S-IFSOCK" "S-IREAD" "S-ISGID" "S-ISUID" "S-ISVTX" "S-IWRITE" "SAVETEXT" "SC-MASK" "SC-ONSTACK" "SC-PC" "SETGIDEXEC" "SETUIDEXEC" "SG-ERASE" "SG-FLAGS" "SG-ISPEED" "SG-KILL" "SG-OSPEED" "SGTTYB" "SIZE-T" "ST-ATIME" "ST-BLKSIZE" "ST-BLOCKS" "ST-CTIME" "ST-DEV" "ST-GID" "ST-MODE" "ST-MTIME" "ST-NLINK" "ST-RDEV" "ST-SIZE" "ST-UID" "STAT" "TERMINAL-SPEEDS" "TIME-T" "TIMEVAL" "TIMEZONE" "TIOCFLUSH" "TIOCGETC" "TIOCGETP" "TIOCGLTC" "TIOCGPGRP" "TIOCGWINSZ" "TIOCNOTTY" "TIOCSETC" "TIOCSETP" "TIOCSLTC" "TIOCSPGRP" "TIOCSWINSZ" "TV-SEC" "TV-USEC" "TZ-DSTTIME" "TZ-MINUTESWEST" "UID-T" "UNIX-ACCEPT" "UNIX-ACCESS" "UNIX-BIND" "UNIX-CHMOD" "UNIX-CHOWN" "UNIX-CLOSE" "UNIX-CONNECT" "UNIX-CREAT" "UNIX-DUP" "UNIX-DUP2" "UNIX-EXECVE" "UNIX-EXIT" "UNIX-FCHMOD" "UNIX-FCHOWN" "UNIX-FCNTL" "UNIX-FD" "UNIX-FILE-MODE" "UNIX-FORK" "UNIX-FSTAT" "UNIX-FSYNC" "UNIX-FTRUNCATE" "UNIX-GETDTABLESIZE" "UNIX-GETEGID" "UNIX-GETGID" "UNIX-GETHOSTNAME" "UNIX-GETPAGESIZE" "UNIX-GETPEERNAME" "UNIX-GETPGRP" "UNIX-GETPID" "UNIX-GETPPID" "UNIX-GETRUSAGE" "UNIX-GETSOCKNAME" "UNIX-GETTIMEOFDAY" "UNIX-GETUID" "UNIX-GID" "UNIX-IOCTL" "UNIX-ISATTY" "UNIX-LINK" "UNIX-LISTEN" "UNIX-LSEEK" "UNIX-LSTAT" "UNIX-MKDIR" "UNIX-OPEN" "UNIX-PATHNAME" "UNIX-PID" "UNIX-PIPE" "UNIX-READ" "UNIX-READLINK" "UNIX-RECV" "UNIX-RENAME" "UNIX-RMDIR" "UNIX-SELECT" "UNIX-SEND" "UNIX-SETPGRP" "UNIX-SOCKET" "UNIX-STAT" "UNIX-SYMLINK" "UNIX-SYNC" "UNIX-TRUNCATE" "UNIX-TTYNAME" "UNIX-UID" "UNIX-UNLINK" "UNIX-UTIMES" "UNIX-WRITE" "WINSIZE" "WRITEGRP" "WRITEOTH" "WRITEOWN" "WS-COL" "WS-ROW" "WS-XPIXEL" "WS-YPIXEL" "WNOHANG" "WSTOPPED" "WUNTRACED" "W_OK" "X_OK" "SIGSYS" "TCSETPGRP" "FD-ZERO" "SIGQUIT" "SIGCHLD" "SIGSEGV" "FD-CLR" "SIGUSR2" "EALREADY" "SIGPIPE" "CHECK" "SIGXCPU" "EOPNOTSUPP" "SIGFPE" "SIGHUP" "ENOTSOCK" "EINTR" "SIGCONT" "UNIX-RESOLVE-LINKS" "SIGKILL" "EMSGSIZE" "ERANGE" "EPROTOTYPE" "UNIX-SIGNAL-NUMBER" "EPFNOSUPPORT" "SIGILL" "EDOM" "EDQUOT" "FD-SETSIZE" "SIGTSTP" "EAFNOSUPPORT" "TCGETPGRP" "EMFILE" "ECONNRESET" "EADDRNOTAVAIL" "SIGALRM" "ENETDOWN" "EVICEOP" "UNIX-FAST-GETRUSAGE" "EPERM" "SIGINT" "EXDEV" "EDEADLK" "ENOSPC" "ECONNREFUSED" "SIGWINCH" "ENOPROTOOPT" "ESRCH" "EUSERS" "SIGVTALRM" "ENOTCONN" "ESUCCESS" "EPIPE" "UNIX-SIMPLIFY-PATHNAME" "EISCONN" "FD-ISSET" "ESHUTDOWN" "EBUSY" "SIGTERM" "ENAMETOOLONG" "EMLINK" "EADDRINUSE" "SIGBUS" "ERESTART" "UNIX-SIGNAL-NAME" "ETIMEDOUT" "ECHILD" "EFBIG" "SIGTRAP" "UNIX-KILLPG" "ENOTBLK" "SIGIOT" "SIGUSR1" "ECONNABORTED" "EHOSTUNREACH" "EBADF" "EINVAL" "FD-SET" "EISDIR" "SIGTTIN" "UNIX-KILL" "EHOSTDOWN" "E2BIG" "ESPIPE" "UNIX-FAST-SELECT" "ENXIO" "ENOTTY" "ELOOP" "LTCHARS" "SIGXFSZ" "EINPROGRESS" "ENOENT" "EPROTONOSUPPORT" "SIGIO" "ENOMEM" "SIGEMT" "EFAULT" "ENODEV" "EIO" "EVICEERR" "ETXTBSY" "EWOULDBLOCK" "EAGAIN" "EDESTADDRREQ" "ENOEXEC" "ENETUNREACH" "ENOTEMPTY" "ENFILE" "SIGTTOU" "EEXIST" "SIGPROF" "SIGSTOP" "ENETRESET" "SIGURG" "ENOBUFS" "EPROCLIM" "EROFS" "ETOOMANYREFS" "UNIX-FILE-KIND" "ELOCAL" "UNIX-SIGSETMASK" "EREMOTE" "ESOCKTNOSUPPORT" "TIOCSIGSEND" "SIGWAITING" "C-IFLAG" "UNIX-TCGETATTR" "C-LFLAG" "C-OFLAG" "C-CFLAG" "TCSAFLUSH" "C-CC" "SIOCSPGRP" "TERMIOS" "UNIX-TCSETATTR" "O_NDELAY" "O_NOCTTY" "O_NONBLOCK" "TCSANOW" "TCSADRAIN" "TCIFLUSH" "TCOFLUSH" "TCIOFLUSH" "UNIX-CFGETOSPEED" "UNIX-CFSETOSPEED" "UNIX-CFGETISPEED" "UNIX-CFSETISPEED" "TTY-IGNBRK" "TTY-BRKINT" "TTY-IGNPAR" "TTY-PARMRK" "TTY-INPCK" "TTY-ISTRIP" "TTY-INLCR" "TTY-IGNCR" "TTY-ICRNL" "TTY-IUCLC" "TTY-IXON" "TTY-IXANY" "TTY-IXOFF" "TTY-IENQAK" "TTY-IMAXBEL" "TTY-OPOST" "TTY-OLCUC" "TTY-ONLCR" "TTY-OCRNL" "TTY-ONOCR" "TTY-ONLRET" "TTY-OFILL" "TTY-OFDEL" "TTY-ISIG" "TTY-ICANON" "TTY-XCASE" "TTY-ECHO" "TTY-ECHOE" "TTY-ECHOK" "TTY-ECHONL" "TTY-NOFLSH" "TTY-IEXTEN" "TTY-TOSTOP" "TTY-ECHOCTL" "TTY-ECHOPRT" "TTY-ECHOKE" "TTY-DEFECHO" "TTY-FLUSHO" "TTY-PENDIN" "TTY-CSTOPB" "TTY-CREAD" "TTY-PARENB" "TTY-PARODD" "TTY-HUPCL" "TTY-CLOCAL" "RCV1EN" "XMT1EN" "TTY-LOBLK" "VINTR" "VQUIT" "VERASE" "VKILL" "VEOF" "VEOL" "VEOL2" "TTY-CBAUD" "TTY-CSIZE" "TTY-CS5" "TTY-CS6" "TTY-CS7" "TTY-CS8" "VMIN" "VTIME" "VSUSP" "VSTART" "VSTOP" "VDSUSP" "UNIX-TCSENDBREAK" "UNIX-TCDRAIN" "UNIX-TCFLUSH" "UNIX-TCFLOW" #!+(or svr4 bsd linux) "O_NDELAY" #!+(or svr4 linux) ("EADDRINUSE" "EADDRNOTAVAIL" "EADV" "EAFNOSUPPORT" "EALREADY" "EBADE" "EBADFD" "EBADMSG" "EBADR" "EBADRQC" "EBADSLT" "EBFONT" #!+svr4 "ECANCELED" "ECHRNG" "ECOMM" "ECONNABORTED" "ECONNREFUSED" "ECONNRESET" "EDEADLK" "EDEADLOCK" "EDESTADDRREQ" #!+linux "EDOTDOT" #!+linux "EDQUOT" "EHOSTDOWN" "EHOSTUNREACH" "EIDRM" "EILSEQ" "EINPROGRESS" "EISCONN" #!+linux "EISNAM" "EL2HLT" "EL2NSYNC" "EL3HLT" "EL3RST" "ELIBACC" "ELIBBAD" "ELIBEXEC" "ELIBMAX" "ELIBSCN" "ELNRNG" "ELOOP" "EMSGSIZE" "EMULTIHOP" "ENAMETOOLONG" #!+linux "ENAVAIL" "ENETDOWN" "ENETRESET" "ENETUNREACH" "ENOANO" "ENOBUFS" "ENOCSI" "ENODATA" "ENOLCK" "ENOLINK" "ENOMSG" "ENONET" "ENOPKG" "ENOPROTOOPT" "ENOSR" "ENOSTR" "ENOSYS" "ENOTCONN" "ENOTEMPTY" #!+linux "ENOTNAM" "ENOTSOCK" #!+svr4 "ENOTSUP" "ENOTUNIQ" "EOPNOTSUPP" "EOVERFLOW" "EPFNOSUPPORT" "EPROTO" "EPROTONOSUPPORT" "EPROTOTYPE" "EREMCHG" "EREMOTE" #!+linux "EREMOTEIO" "ERESTART" "ESHUTDOWN" "ESOCKTNOSUPPORT" "ESRMNT" "ESTALE" "ESTRPIPE" "ETIME" "ETIMEDOUT" "ETOOMANYREFS" #!+linux "EUCLEAN" "EUNATCH" "EUSERS" "EWOULDBLOCK" "EXFULL"))) #s(sb-cold:package-data :name "SB!VM" :doc "internal: the default place to hide information about the hardware and data structure representations" :use ("CL" "SB!ALIEN" "SB!ALIEN-INTERNALS" "SB!ASSEM" "SB!C" "SB!EXT" "SB!FASL" "SB!INT" "SB!KERNEL" "SB!SYS" "SB!UNIX") :export ("*ASSEMBLY-UNIT-LENGTH*" "*PRIMITIVE-OBJECTS*" "AFTER-BREAKPOINT-TRAP" "ANY-REG-SC-NUMBER" "ARRAY-DATA-SLOT" "ARRAY-DIMENSIONS-OFFSET" "ARRAY-DISPLACED-P-SLOT" "ARRAY-DISPLACEMENT-SLOT" "ARRAY-ELEMENTS-SLOT" "ARRAY-FILL-POINTER-P-SLOT" "ARRAY-FILL-POINTER-SLOT" "ATOMIC-FLAG" "BASE-CHAR-REG-SC-NUMBER" "BASE-CHAR-STACK-SC-NUMBER" "BASE-CHAR-WIDETAG" "BIGNUM-DIGITS-OFFSET" "BIGNUM-WIDETAG" "BINDING-SIZE" "BINDING-SYMBOL-SLOT" "BINDING-VALUE-SLOT" "BREAKPOINT-TRAP" "N-BYTE-BITS" "BYTE-REG-SC-NUMBER" "CATCH-BLOCK-CURRENT-CODE-SLOT" "CATCH-BLOCK-CURRENT-CONT-SLOT" "CATCH-BLOCK-CURRENT-UWP-SLOT" "CATCH-BLOCK-ENTRY-PC-SLOT" "CATCH-BLOCK-PREVIOUS-CATCH-SLOT" "CATCH-BLOCK-SC-NUMBER" "CATCH-BLOCK-SIZE" "CATCH-BLOCK-SIZE-SLOT" "CATCH-BLOCK-TAG-SLOT" "CERROR-TRAP" "CLOSURE-FUN-HEADER-WIDETAG" "CLOSURE-FUN-SLOT" "CLOSURE-HEADER-WIDETAG" "CLOSURE-INFO-OFFSET" "CODE-CODE-SIZE-SLOT" "CODE-CONSTANTS-OFFSET" "CODE-DEBUG-INFO-SLOT" "CODE-ENTRY-POINTS-SLOT" "CODE-HEADER-WIDETAG" "CODE-TRACE-TABLE-OFFSET-SLOT" "COMPLEX-ARRAY-WIDETAG" "COMPLEX-BIT-VECTOR-WIDETAG" "COMPLEX-DOUBLE-FLOAT-FILLER-SLOT" "COMPLEX-DOUBLE-FLOAT-IMAG-SLOT" "COMPLEX-DOUBLE-FLOAT-REAL-SLOT" "COMPLEX-DOUBLE-FLOAT-SIZE" "COMPLEX-DOUBLE-FLOAT-WIDETAG" "COMPLEX-DOUBLE-REG-SC-NUMBER" "COMPLEX-DOUBLE-STACK-SC-NUMBER" "COMPLEX-IMAG-SLOT" "COMPLEX-REAL-SLOT" #!+long-float "COMPLEX-LONG-FLOAT-IMAG-SLOT" #!+long-float "COMPLEX-LONG-FLOAT-REAL-SLOT" #!+long-float "COMPLEX-LONG-FLOAT-SIZE" #!+long-float "COMPLEX-LONG-FLOAT-WIDETAG" #!+long-float "COMPLEX-LONG-REG-SC-NUMBER" #!+long-float "COMPLEX-LONG-STACK-SC-NUMBER" "COMPLEX-SINGLE-FLOAT-IMAG-SLOT" "COMPLEX-SINGLE-FLOAT-REAL-SLOT" "COMPLEX-SINGLE-FLOAT-SIZE" "COMPLEX-SINGLE-FLOAT-WIDETAG" "COMPLEX-SINGLE-REG-SC-NUMBER" "COMPLEX-SINGLE-STACK-SC-NUMBER" "COMPLEX-SIZE" "COMPLEX-STRING-WIDETAG" "COMPLEX-WIDETAG" "COMPLEX-VECTOR-WIDETAG" "CONS-CAR-SLOT" "CONS-CDR-SLOT" "CONS-SIZE" "CONSTANT-SC-NUMBER" "CONTEXT-FLOATING-POINT-MODES" "CONTEXT-FLOAT-REGISTER" "CONTEXT-PC" "CONTEXT-REGISTER" "CONTROL-STACK-SC-NUMBER" "COUNT-NO-OPS" "*CURRENT-CATCH-BLOCK*" "CURRENT-FLOAT-TRAP" "DEFINE-FOR-EACH-PRIMITIVE-OBJECT" "DESCRIPTOR-REG-SC-NUMBER" "DESCRIPTOR-VS-NON-DESCRIPTOR-STORAGE" "DOUBLE-FLOAT-EXPONENT-BYTE" "DOUBLE-FLOAT-BIAS" "DOUBLE-FLOAT-DIGITS" "DOUBLE-FLOAT-EXPONENT-BYTE" "DOUBLE-FLOAT-FILLER-SLOT" "DOUBLE-FLOAT-HIDDEN-BIT" "DOUBLE-FLOAT-NORMAL-EXPONENT-MAX" "DOUBLE-FLOAT-NORMAL-EXPONENT-MIN" "DOUBLE-FLOAT-SIGNIFICAND-BYTE" "DOUBLE-FLOAT-SIZE" "DOUBLE-FLOAT-TRAPPING-NAN-BIT" "DOUBLE-FLOAT-WIDETAG" "DOUBLE-FLOAT-VALUE-SLOT" "DOUBLE-INT-CARG-REG-SC-NUMBER" "DOUBLE-REG-SC-NUMBER" "DOUBLE-STACK-SC-NUMBER" "ERROR-TRAP" "EVEN-FIXNUM-LOWTAG" "EXPORTED-STATIC-SYMBOLS" "EXTERN-ALIEN-NAME" "FDEFN-FUN-SLOT" "FDEFN-NAME-SLOT" "FDEFN-RAW-ADDR-SLOT" "FDEFN-SIZE" "FDEFN-WIDETAG" "FIND-HOLES" "FIXNUMIZE" "FIXUP-CODE-OBJECT" "FLOAT-DENORMAL-TRAP-BIT" "FLOAT-DIVIDE-BY-ZERO-TRAP-BIT" "FLOAT-IMPRECISE-TRAP-BIT" "FLOAT-INVALID-TRAP-BIT" "FLOAT-OVERFLOW-TRAP-BIT" "FLOAT-SIGN-SHIFT" "FLOAT-UNDERFLOW-TRAP-BIT" "FLOATING-POINT-MODES" "FORWARDING-POINTER-TYPE" "FP-CONSTANT-SC-NUMBER" "FP-DOUBLE-ZERO-SC-NUMBER" "FP-SINGLE-ZERO-SC-NUMBER" "FUNCALLABLE-INSTANCE-FUN-SLOT" "FUNCALLABLE-INSTANCE-HEADER-WIDETAG" "FUNCALLABLE-INSTANCE-INFO-OFFSET" "SIMPLE-FUN-ARGLIST-SLOT" "SIMPLE-FUN-CODE-OFFSET" "FUN-END-BREAKPOINT-TRAP" "SIMPLE-FUN-HEADER-CODE-OFFSET" "SIMPLE-FUN-HEADER-NEXT-SLOT" "SIMPLE-FUN-HEADER-SELF-SLOT" "SIMPLE-FUN-HEADER-WIDETAG" "SIMPLE-FUN-HEADER-TYPE-SLOT" "SIMPLE-FUN-NAME-SLOT" "SIMPLE-FUN-NEXT-SLOT" "FUN-POINTER-LOWTAG" "SIMPLE-FUN-SELF-SLOT" "SIMPLE-FUN-TYPE-SLOT" "FUNCALLABLE-INSTANCE-LAYOUT-SLOT" "FUNCALLABLE-INSTANCE-LEXENV-SLOT" "GENESIS" "HALT-TRAP" "IGNORE-ME-SC-NUMBER" "IMMEDIATE-BASE-CHAR-SC-NUMBER" "IMMEDIATE-SAP-SC-NUMBER" "IMMEDIATE-SC-NUMBER" "*INITIAL-DYNAMIC-SPACE-FREE-POINTER*" "INSTANCE-HEADER-WIDETAG" "INSTANCE-POINTER-LOWTAG" "INSTANCE-SLOTS-OFFSET" "INSTANCE-USAGE" "INTERIOR-REG-SC-NUMBER" "INTERNAL-ERROR-ARGS" "INTERRUPTED-FLAG" "LIST-ALLOCATED-OBJECTS" "LIST-POINTER-LOWTAG" ;; FIXME: Possibly these other parameters (see ;; compiler/{x86,sparc}/parms.lisp) should be defined ;; conditionally on #!+LONG-FLOAT) "LONG-FLOAT-BIAS" "LONG-FLOAT-DIGITS" "LONG-FLOAT-EXPONENT-BYTE" "LONG-FLOAT-HIDDEN-BIT" "LONG-FLOAT-NORMAL-EXPONENT-MAX" "LONG-FLOAT-NORMAL-EXPONENT-MIN" "LONG-FLOAT-SIGNIFICAND-BYTE" #!+long-float "LONG-FLOAT-SIZE" "LONG-FLOAT-TRAPPING-NAN-BIT" #!+long-float "LONG-FLOAT-WIDETAG" #!+long-float "LONG-FLOAT-VALUE-SLOT" #!+long-float "LONG-REG-SC-NUMBER" #!+long-float "LONG-STACK-SC-NUMBER" "LOWTAG-LIMIT" "LOWTAG-MASK" "LRA-SAVE-OFFSET" "MEMORY-USAGE" "MOST-POSITIVE-COST" "N-LOWTAG-BITS" "NEGATIVE-IMMEDIATE-SC-NUMBER" "NFP-SAVE-OFFSET" "NON-DESCRIPTOR-REG-SC-NUMBER" "NULL-SC-NUMBER" "OBJECT-NOT-LIST-TRAP" "OBJECT-NOT-INSTANCE-TRAP" "OCFP-SAVE-OFFSET" "ODD-FIXNUM-LOWTAG" "OFFSET-STATIC-SYMBOL" "OTHER-IMMEDIATE-0-LOWTAG" "OTHER-IMMEDIATE-1-LOWTAG" "OTHER-POINTER-LOWTAG" "PAD-DATA-BLOCK" "PENDING-INTERRUPT-TRAP" "PRIMITIVE-OBJECT" "PRIMITIVE-OBJECT-WIDETAG" "PRIMITIVE-OBJECT-LOWTAG" "PRIMITIVE-OBJECT-NAME" "PRIMITIVE-OBJECT-OPTIONS" "PRIMITIVE-OBJECT-P" "PRIMITIVE-OBJECT-SIZE" "PRIMITIVE-OBJECT-SLOTS" "PRIMITIVE-OBJECT-VARIABLE-LENGTH-P" "PRINT-ALLOCATED-OBJECTS" "RANDOM-IMMEDIATE-SC-NUMBER" "RATIO-DENOMINATOR-SLOT" "RATIO-NUMERATOR-SLOT" "RATIO-SIZE" "RATIO-WIDETAG" "*READ-ONLY-SPACE-FREE-POINTER*" "REGISTER-SAVE-PENALTY" "RETURN-PC-HEADER-WIDETAG" "RETURN-PC-RETURN-POINT-OFFSET" "RETURN-PC-SAVE-OFFSET" "SANCTIFY-FOR-EXECUTION" "SAP-POINTER-SLOT" "SAP-REG-SC-NUMBER" "SAP-SIZE" "SAP-STACK-SC-NUMBER" "SAP-WIDETAG" "SIGFPE-HANDLER" "SIGNED-REG-SC-NUMBER" "SIGNED-STACK-SC-NUMBER" "SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-WIDETAG" #!+long-float "SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-WIDETAG" "SIMPLE-ARRAY-COMPLEX-SINGLE-FLOAT-WIDETAG" "SIMPLE-ARRAY-DOUBLE-FLOAT-WIDETAG" #!+long-float "SIMPLE-ARRAY-LONG-FLOAT-WIDETAG" "SIMPLE-ARRAY-NIL-WIDETAG" "SIMPLE-ARRAY-SINGLE-FLOAT-WIDETAG" "SIMPLE-ARRAY-WIDETAG" "SIMPLE-ARRAY-UNSIGNED-BYTE-16-WIDETAG" "SIMPLE-ARRAY-UNSIGNED-BYTE-2-WIDETAG" "SIMPLE-ARRAY-UNSIGNED-BYTE-32-WIDETAG" "SIMPLE-ARRAY-UNSIGNED-BYTE-4-WIDETAG" "SIMPLE-ARRAY-UNSIGNED-BYTE-8-WIDETAG" "SIMPLE-ARRAY-SIGNED-BYTE-16-WIDETAG" "SIMPLE-ARRAY-SIGNED-BYTE-30-WIDETAG" "SIMPLE-ARRAY-SIGNED-BYTE-32-WIDETAG" "SIMPLE-ARRAY-SIGNED-BYTE-8-WIDETAG" "SIMPLE-BIT-VECTOR-WIDETAG" "SIMPLE-STRING-WIDETAG" "SIMPLE-VECTOR-WIDETAG" "SINGLE-FLOAT-BIAS" "SINGLE-FLOAT-DIGITS" "SINGLE-FLOAT-EXPONENT-BYTE" "SINGLE-FLOAT-HIDDEN-BIT" "SINGLE-FLOAT-NORMAL-EXPONENT-MAX" "SINGLE-FLOAT-NORMAL-EXPONENT-MIN" "SINGLE-FLOAT-SIGNIFICAND-BYTE" "SINGLE-FLOAT-SIZE" "SINGLE-FLOAT-TRAPPING-NAN-BIT" "SINGLE-FLOAT-WIDETAG" "SINGLE-FLOAT-VALUE-SLOT" "SINGLE-INT-CARG-REG-SC-NUMBER" "SINGLE-REG-SC-NUMBER" "SINGLE-STACK-SC-NUMBER" "SINGLE-STEP-BREAKPOINT-TRAP" "SINGLE-VALUE-RETURN-BYTE-OFFSET" "SLOT-DOCS" "SLOT-LENGTH" "SLOT-NAME" "SLOT-OFFSET" "SLOT-OPTIONS" "SLOT-REST-P" "*STATIC-FUNS*" "STATIC-FUN-OFFSET" "STATIC-SYMBOL-OFFSET" "STATIC-SYMBOL-P" "*STATIC-SPACE-FREE-POINTER*" "*STATIC-SYMBOLS*" "STRUCTURE-USAGE" "SYMBOL-HASH-SLOT" "SYMBOL-HEADER-WIDETAG" "SYMBOL-NAME-SLOT" "SYMBOL-PACKAGE-SLOT" "SYMBOL-PLIST-SLOT" "SYMBOL-SIZE" "SYMBOL-UNUSED-SLOT" "SYMBOL-VALUE-SLOT" "BINDING-STACK-START" "BINDING-STACK-END" "CONTROL-STACK-START" "CONTROL-STACK-END" "DYNAMIC-SPACE-START" "DYNAMIC-SPACE-END" #!+c-stack-is-control-stack "ALTERNATE-SIGNAL-STACK-START" #!-gencgc "DYNAMIC-0-SPACE-START" #!-gencgc "DYNAMIC-0-SPACE-END" #!-gencgc "DYNAMIC-1-SPACE-START" #!-gencgc "DYNAMIC-1-SPACE-END" "READ-ONLY-SPACE-START" "READ-ONLY-SPACE-END" "TARGET-BYTE-ORDER" "TARGET-HEAP-ADDRESS-SPACE" "STATIC-SPACE-START" "STATIC-SPACE-END" "TRACE-TABLE-CALL-SITE" "TRACE-TABLE-FUN-EPILOGUE" "TRACE-TABLE-FUN-PROLOGUE" "TRACE-TABLE-NORMAL" "N-WIDETAG-BITS" "WIDETAG-MASK" "UNBOUND-MARKER-WIDETAG" "UNSIGNED-IMMEDIATE-SC-NUMBER" "UNSIGNED-REG-SC-NUMBER" "UNSIGNED-STACK-SC-NUMBER" "UNWIND-BLOCK-CURRENT-CODE-SLOT" "UNWIND-BLOCK-CURRENT-CONT-SLOT" "UNWIND-BLOCK-CURRENT-UWP-SLOT" "UNWIND-BLOCK-ENTRY-PC-SLOT" "UNWIND-BLOCK-SIZE" "VALUE-CELL-HEADER-WIDETAG" "VALUE-CELL-SIZE" "VALUE-CELL-VALUE-SLOT" "VECTOR-DATA-OFFSET" "VECTOR-LENGTH-SLOT" "VECTOR-MUST-REHASH-SUBTYPE" "VECTOR-NORMAL-SUBTYPE" "VECTOR-VALID-HASHING-SUBTYPE" "WEAK-POINTER-BROKEN-SLOT" "WEAK-POINTER-NEXT-SLOT" "WEAK-POINTER-SIZE" "WEAK-POINTER-WIDETAG" "WEAK-POINTER-VALUE-SLOT" "WORD" "N-WORD-BITS" "N-WORD-BYTES" "WORD-REG-SC-NUMBER" "WORD-SHIFT" "ZERO-SC-NUMBER")) #s(sb-cold:package-data :name "SB!WALKER" :doc "internal: a code walker used by PCL" :use ("CL" "SB!INT" "SB!EXT") :export ("DEFINE-WALKER-TEMPLATE" "WALK-FORM" "*WALK-FORM-EXPAND-MACROS-P*" "VAR-LEXICAL-P" "VAR-SPECIAL-P" "VAR-GLOBALLY-SPECIAL-P" "*VAR-DECLARATIONS*" "VAR-DECLARATION" ;; These were exported from the original PCL version of this ;; package, but aren't used in SBCL. ;;"NESTED-WALK-FORM" "MACROEXPAND-ALL" )))