-;;;; the specifications of SBCL-specific packages, except..
+;;;; -*- Lisp -*-
+
+;;;; the specifications of target packages, except for a few things
+;;;; which are handled elsewhere by other mechanisms:
;;;; * the creation of the trivial SB-SLOT-ACCESSOR-NAME package
;;;; * any SHADOWing hackery
-;;;; The standard, non-SBCL-specific packages COMMON-LISP,
-;;;; COMMON-LISP-USER, and KEYWORD are also handled through other
-;;;; mechanisms.
+;;;; * 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 corresponding
+;;;; SB-FOO packages in the cross-compilation host. They're renamed to
+;;;; SB-FOO later, after the danger of collision has passed.
;;;; This software is part of the SBCL system. See the README file for
;;;; more information.
:reexport ("ARRAY" "BOOLEAN" "DOUBLE-FLOAT" "LONG-FLOAT" "FUNCTION"
"INTEGER" "SINGLE-FLOAT" "UNION" "SYSTEM-AREA-POINTER"
"VALUES" "*")
- :export ("ADDR" "ALIEN" "ALIEN-FUNCALL" "ALIEN-SAP"
- "ALIEN-SIZE" "ALIEN-BOOLEAN" "CAST" "DEF-ALIEN-ROUTINE"
- "DEF-ALIEN-TYPE" "DEF-ALIEN-VARIABLE" "DEF-BUILTIN-ALIEN-TYPE"
- "DEREF" "ENUM" "EXTERN-ALIEN"
+ :export ("ADDR" "ALIEN" "ALIEN-FUNCALL" "ALIEN-SAP" "ALIEN-SIZE"
+ "CAST"
+ "DEF-ALIEN-ROUTINE" "DEF-ALIEN-TYPE"
+ "DEF-ALIEN-VARIABLE" "DEF-BUILTIN-ALIEN-TYPE"
+ "DEREF"
+ "ENUM" "EXTERN-ALIEN"
+ "FREE-ALIEN"
+ "LOAD-FOREIGN" "LOAD-1-FOREIGN"
+ "MAKE-ALIEN"
+ "NULL-ALIEN"
"SAP-ALIEN" "SIGNED" "SLOT" "STRUCT"
- "UNSIGNED" "WITH-ALIEN" "FREE-ALIEN" "NULL-ALIEN"
- "MAKE-ALIEN"
- "LOAD-FOREIGN" "LOAD-1-FOREIGN"))
+ "UNSIGNED"
+ "WITH-ALIEN"))
#s(sb-cold:package-data
:name "SB!ALIEN-INTERNALS"
"LOCAL-ALIEN-INFO-P" "LOCAL-ALIEN-INFO-TYPE"
"MAKE-ALIEN-FUNCTION-TYPE" "MAKE-ALIEN-POINTER-TYPE"
"MAKE-ALIEN-VALUE"
- "MAKE-LOCAL-ALIEN" "NATURALIZE" "NOTE-LOCAL-ALIEN-TYPE"
+ "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!INT" "SB!EXT")
+ :use ("CL" "SB!EXT" "SB!INT")
:export ("ASSEMBLY-UNIT"
"*ASSEM-SCHEDULER-P*"
#s(sb-cold:package-data
:name "SB!C"
:doc "private: implementation of the compiler"
- :use ("CL" "SB!ALIEN-INTERNALS" "SB!ALIEN" "SB!BIGNUM"
- #!+sb-dyncount "SB-DYNCOUNT"
- "SB!EXT" "SB!INT" "SB!KERNEL" "SB!ASSEM" "SB!SYS")
+ ;; (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" "&MORE"
+ :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-FASL-FILE-IMPLEMENTATION*"
- "*BACKEND-FASL-FILE-TYPE*" "*BACKEND-FASL-FILE-VERSION*"
- "*BACKEND-INFO-ENVIRONMENT*"
"*BACKEND-INSTRUCTION-FLAVORS*" "*BACKEND-INSTRUCTION-FORMATS*"
"*BACKEND-INTERNAL-ERRORS*" "*BACKEND-PAGE-SIZE*"
"*BACKEND-REGISTER-SAVE-PENALTY*"
"*BACKEND-T-PRIMITIVE-TYPE*"
"*CODE-SEGMENT*"
- "*CONVERTING-FOR-INTERPRETER*"
- "*COUNT-VOP-USAGES*" "*ELSEWHERE*"
- "*FASL-HEADER-STRING-START-STRING*"
- "*FASL-HEADER-STRING-STOP-CHAR-CODE*"
+ "*COUNT-VOP-USAGES*" "*ELSEWHERE*" "*FREE-FUNCTIONS*"
"*SETF-ASSUMED-FBOUNDP*"
"*SUPPRESS-VALUES-DECLARATION*"
"ANY" "ARGUMENT-COUNT-ERROR" "ASSEMBLE-FILE"
"ATTRIBUTES" "ATTRIBUTES-INTERSECTION" "ATTRIBUTES-UNION"
"ATTRIBUTES=" "BIND"
- "BYTE-BLT" ; doesn't logically belong here, but is name of VOP..
"CALL" "CALL-LOCAL" "CALL-NAMED" "CALL-OUT" "CALL-VARIABLE"
"CALLEE-NFP-TN" "CALLEE-RETURN-PC-TN"
"CASE-BODY" "CATCH-BLOCK" "CHECK-CONS"
"CHECK-SIGNED-BYTE-32" "CHECK-SYMBOL" "CHECK-UNSIGNED-BYTE-32"
"CLOSURE-INIT" "CLOSURE-REF"
"CODE-CONSTANT-REF" "CODE-CONSTANT-SET"
- "COMPILE-FOR-EVAL" "COMPONENT" "COMPONENT-HEADER-LENGTH"
+ "COMPILE-LAMBDA-FOR-DEFUN"
+ "%COMPILER-DEFUN" "COMPILER-ERROR"
+ "COMPONENT" "COMPONENT-HEADER-LENGTH"
"COMPONENT-INFO" "COMPONENT-LIVE-TN" "COMPUTE-FUNCTION"
"COMPUTE-OLD-NFP" "COPY-MORE-ARG"
"CURRENT-BINDING-POINTER" "CURRENT-NFP-TN"
"CURRENT-STACK-POINTER" "DEALLOC-ALIEN-STACK-SPACE"
"DEALLOC-NUMBER-STACK-SPACE" "DEF-BOOLEAN-ATTRIBUTE"
- "DEF-IR1-TRANSLATOR" "DEF-PRIMITIVE-TRANSLATOR"
+ "DEF-IR1-TRANSLATOR"
"!DEF-PRIMITIVE-TYPE" "!DEF-PRIMITIVE-TYPE-ALIAS"
"DEF-SOURCE-TRANSFORM" "!DEF-VM-SUPPORT-ROUTINE"
"DEFINE-ASSEMBLY-ROUTINE" "DEFINE-MOVE-FUNCTION"
"DEFKNOWN" "DEFOPTIMIZER"
"DEFTRANSFORM" "DERIVE-TYPE"
"ENTRY-NODE-INFO-NLX-TAG" "ENTRY-NODE-INFO-ST-TOP"
- "ENVIRONMENT-DEBUG-LIVE-TN" "ENVIRONMENT-LIVE-TN"
+ "PHYSENV-DEBUG-LIVE-TN" "PHYSENV-LIVE-TN"
"FAST-SYMBOL-FUNCTION" "FAST-SYMBOL-VALUE" "FOLDABLE"
- "FORCE-TN-TO-STACK" "GET-VECTOR-SUBTYPE"
- "HALT" "IF-EQ" "INSTANCE-REF" "INSTANCE-SET"
+ "FORCE-TN-TO-STACK"
+ "GET-VECTOR-SUBTYPE"
+ "HALT"
+ "IF-EQ" "INLINE-SYNTACTIC-CLOSURE-LAMBDA"
+ "INSTANCE-REF" "INSTANCE-SET"
"IR2-COMPONENT-CONSTANTS" "IR2-CONVERT"
- "IR2-ENVIRONMENT-NUMBER-STACK-P" "KNOWN-CALL-LOCAL"
- "KNOWN-RETURN" "LAMBDA-EVAL-INFO-ARGS-PASSED"
- "LAMBDA-EVAL-INFO-ENTRIES" "LAMBDA-EVAL-INFO-FRAME-SIZE"
- "LAMBDA-EVAL-INFO-FUNCTION" "LOCATION=" "LTN-ANNOTATE"
+ "IR2-PHYSENV-NUMBER-STACK-P"
+ "KNOWN-CALL-LOCAL" "KNOWN-RETURN"
+ "LAMBDA-INDEPENDENT-OF-LEXENV-P"
+ "LAMBDA-WITH-LEXENV" "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-VALUE-CELL" "MAKE-WIRED-TN" "MAYBE-COMPILER-NOTE"
+ "MAKE-WIRED-TN" "MAYBE-COMPILER-NOTE"
"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"
+ "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"
"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"
- "VALUE-CELL-REF" "VALUE-CELL-SET"
"VERIFY-ARGUMENT-COUNT" "WRITE-PACKED-BIT-VECTOR"
"WRITE-VAR-INTEGER" "WRITE-VAR-STRING" "XEP-ALLOCATE-FRAME"
"LABEL-ID" "FIXUP" "FIXUP-FLAVOR" "FIXUP-NAME" "FIXUP-OFFSET"
"NOTE-NEXT-INSTRUCTION"
"SET-SLOT"
"LOCATION-NUMBER"
- "BYTE-FASL-FILE-VERSION"
"*COMPONENT-BEING-COMPILED*"
"BLOCK-NUMBER"
"BACKEND"
- "BACKEND-BYTE-FASL-FILE-IMPLEMENTATION"
"IR2-BLOCK-BLOCK"
- "DISASSEM-BYTE-COMPONENT"
"FUNCALLABLE-INSTANCE-LEXENV"
- "DISASSEM-BYTE-FUN"
"VOP-BLOCK"
"*ASSEMBLY-OPTIMIZE*"
"LARGE-ALLOC"
:doc "public: some types used with ALIENs"
:use ("CL" "SB!SYS" "SB!ALIEN-INTERNALS" "SB!ALIEN" "SB!INT" "SB!EXT")
:reexport ("FLOAT" "CHAR")
- :export ("C-STRING" "DOUBLE" "INT" "LONG"
+ :export ("C-STRING" "DOUBLE" "GET-ERRNO" "INT" "LONG"
"SHORT" "UNSIGNED-CHAR" "UNSIGNED-INT"
"UNSIGNED-LONG" "UNSIGNED-SHORT" "VOID"))
"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!C-CALL"
+ "SB!EXT" "SB!INT" "SB!KERNEL" "SB!SYS")
+ :export ("*ASSEMBLER-ROUTINES*"
+ "+BACKEND-FASL-FILE-IMPLEMENTATION+"
+ "*FASL-FILE-TYPE*"
+ "CLOSE-FASL-OUTPUT"
+ "DUMP-ASSEMBLER-ROUTINES"
+ "DUMP-OBJECT"
+ "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-TOP-LEVEL-LAMBDA-CALL"
+ "FASL-NOTE-HANDLE-FOR-CONSTANT"
+ "FASL-OUTPUT" "FASL-OUTPUT-P"
+ "FASL-OUTPUT-ENTRY-TABLE" "FASL-OUTPUT-STREAM"
+ "FASL-VALIDATE-STRUCTURE"
+ "*!LOAD-TIME-VALUES*"
+ "LOAD-TYPE-PREDICATE"
+ "OPEN-FASL-OUTPUT"
+ "*!REVERSED-COLD-TOPLEVELS*"
+ "*STATIC-FOREIGN-SYMBOLS*"))
+
;; 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 a new package
- ;; (e.g. something to collect together all the FOP stuff), I
+ ;; 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
:name "SB!IMPL"
:doc "private: a grab bag of implementation details"
:use ("CL" "SB!ALIEN" "SB!BIGNUM" "SB!C-CALL" "SB!DEBUG" "SB!EXT"
- "SB!GRAY" "SB!INT" "SB!KERNEL" "SB!SYS"))
+ "SB!FASL" "SB!GRAY" "SB!INT" "SB!KERNEL" "SB!SYS"))
#s(sb-cold:package-data
:name "SB!DEBUG"
debugger interface mixed with various low-level implementation stuff
like *STACK-TOP-HINT*"
:use ("CL" "SB!EXT" "SB!INT" "SB!SYS")
- :export ("*AUTO-EVAL-IN-FRAME*" "*DEBUG-BEGINNER-HELP-P*"
+ :export ("*DEBUG-BEGINNER-HELP-P*"
"*DEBUG-CONDITION*"
"*DEBUG-PRINT-LENGTH*" "*DEBUG-PRINT-LEVEL*"
"*DEBUG-READTABLE*" "*DEBUG-HELP-STRING*"
"DEBUG-SOURCE-CREATED" "DEBUG-SOURCE-COMPILED"
"DEBUG-SOURCE-START-POSITIONS" "DEBUG-SOURCE"
"DEBUG-SOURCE-P")
- :export ("*DEBUGGING-INTERPRETER*" "ACTIVATE-BREAKPOINT"
+ :export ("ACTIVATE-BREAKPOINT"
"AMBIGUOUS-DEBUG-VARS" "AMBIGUOUS-VARIABLE-NAME" "BREAKPOINT"
"BREAKPOINT-ACTIVE-P" "BREAKPOINT-HOOK-FUNCTION" "BREAKPOINT-INFO"
"BREAKPOINT-KIND" "BREAKPOINT-P" "BREAKPOINT-WHAT" "CODE-LOCATION"
- "CODE-LOCATION-DEBUG-BLOCK" "CODE-LOCATION-DEBUG-FUNCTION"
+ "CODE-LOCATION-DEBUG-BLOCK" "CODE-LOCATION-DEBUG-FUN"
"CODE-LOCATION-DEBUG-SOURCE" "CODE-LOCATION-FORM-NUMBER"
"CODE-LOCATION-P" "CODE-LOCATION-TOP-LEVEL-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-FUNCTION" "DEBUG-FUNCTION-FUNCTION" "DEBUG-FUNCTION-KIND"
- "DEBUG-FUNCTION-LAMBDA-LIST" "DEBUG-FUNCTION-NAME"
- "DEBUG-FUNCTION-P" "DEBUG-FUNCTION-START-LOCATION"
- "DEBUG-FUNCTION-SYMBOL-VARIABLES"
+ "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-VARIABLES"
"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-FUNCTION-BLOCKS"
- "DO-DEBUG-FUNCTION-VARIABLES" "EVAL-IN-FRAME"
+ "DO-DEBUG-BLOCK-LOCATIONS" "DO-DEBUG-FUN-BLOCKS"
+ "DO-DEBUG-FUN-VARIABLES"
"FORM-NUMBER-TRANSLATIONS" "FRAME" "FRAME-CATCHES"
- "FRAME-CODE-LOCATION" "FRAME-DEBUG-FUNCTION" "FRAME-DOWN"
- "FRAME-FUNCTION-MISMATCH" "FRAME-NUMBER" "FRAME-P" "FRAME-UP"
- "FUNCTION-DEBUG-FUNCTION" "FUNCTION-END-COOKIE-VALID-P"
+ "FRAME-CODE-LOCATION" "FRAME-DEBUG-FUN" "FRAME-DOWN"
+ "FRAME-FUN-MISMATCH" "FRAME-NUMBER" "FRAME-P" "FRAME-UP"
+ "FUN-DEBUG-FUN" "FUNCTION-END-COOKIE-VALID-P"
"INVALID-CONTROL-STACK-POINTER" "INVALID-VALUE"
"LAMBDA-LIST-UNAVAILABLE" "MAKE-BREAKPOINT" "NO-DEBUG-BLOCKS"
- "NO-DEBUG-FUNCTION-RETURNS" "NO-DEBUG-INFO" "PREPROCESS-FOR-EVAL"
+ "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"
"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-FUNCTION"
+ "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"
"ADD-OFFS-NOTE-HOOK" "ADD-OFFS-COMMENT-HOOK"
"DSTATE-CUR-ADDR" "DSTATE-NEXT-ADDR"))
- #!+sb-interpreter
- #s(sb-cold:package-data
- :name "SB!EVAL"
- :doc "private: the implementation of the IR1 interpreter"
- :use ("CL" "SB!KERNEL" "SB!INT")
- :export ("*EVAL-STACK-TRACE*" "*INTERNAL-APPLY-NODE-TRACE*"
- "FLUSH-INTERPRETED-FUNCTION-CACHE" "INTERNAL-EVAL"
- "INTERPRETED-FUNCTION"
- "INTERPRETED-FUNCTION-ARGLIST"
- "INTERPRETED-FUNCTION-CLOSURE"
- "INTERPRETED-FUNCTION-LAMBDA-EXPRESSION"
- "INTERPRETED-FUNCTION-NAME"
- "INTERPRETED-FUNCTION-P"
- "INTERPRETED-FUNCTION-TYPE"
- "MAKE-INTERPRETED-FUNCTION"
- "PRINT-INTERPRETED-FUNCTION-OBJECT"
- "TRACE-EVAL"))
-
#s(sb-cold:package-data
:name "SB!EXT"
:doc "public: miscellaneous supported extensions to the ANSI Lisp spec"
;; There is no one right way to do DESCRIBE.
"*DESCRIBE-INDENTATION-STEP*"
+ ;; 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*"
"*USE-IMPLEMENTATION-TYPES*"
"*BYTE-COMPILE-TOP-LEVEL*"
"*BYTE-COMPILE-DEFAULT*"
- "*DERIVE-FUNCTION-TYPES*" ; FIXME FIXME FIXME FIXME..
+ "*DERIVE-FUNCTION-TYPES*"
;; 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..
+ ;; 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
#s(sb-cold:package-data
:name "SB!FORMAT"
:doc "private: implementation of FORMAT and friends"
- :use ("CL" "SB!KERNEL" "SB!EXT" "SB!INT"))
+ :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!KERNEL" "SB!EXT" "SB!INT")
+ :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"
"private: miscellaneous unsupported extensions to the ANSI spec. Most 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!C-CALL" "SB!SYS" "SB!GRAY")
+ :use ("CL" "SB!ALIEN" "SB!C-CALL" "SB!GRAY" "SB!FASL" "SB!SYS")
:export ("*AFTER-SAVE-INITIALIZATIONS*" "*BEFORE-SAVE-INITIALIZATIONS*"
"*ALL-MODIFIER-NAMES*"
"*BACKUP-EXTENSION*"
+ ;; 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*"
;; hash mixing operations
"MIX" "MIXF"
+
+ ;; optimization idioms
+ "*OPTIMIZE-BYTE-COMPILATION*"
+ "*OPTIMIZE-EXTERNAL-DESPITE-BYTE-COMPILATION*"
;; Arguably there's no one right value for the system
;; prompt. But Common Lisp makes it easy for you to write
;; error-reporting facilities
"SIMPLE-CONTROL-ERROR" "SIMPLE-FILE-ERROR"
- "SIMPLE-PROGRAM-ERROR" "SIMPLE-STYLE-WARNING"
+ "SIMPLE-PROGRAM-ERROR" "SIMPLE-STREAM-ERROR"
+ "SIMPLE-STYLE-WARNING"
"STYLE-WARN"
;; bootstrapping magic, to make things happen both in
;; in the cross-compiler's environment
"DEF!MACRO" "DEF!METHOD" "DEF!STRUCT" "DEF!TYPE"
+ ;; 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"
+ "SANE-PACKAGE"
"CIRCULAR-LIST-P"
"SWAPPED-ARGS-FUN"
"ANY/TYPE" "EVERY/TYPE"
"TYPE-BOUND-NUMBER"
"CONSTANTLY-T" "CONSTANTLY-NIL" "CONSTANTLY-0"
"PSXHASH"
+ "%BREAK"
;; ..and macros..
"COLLECT"
"DO-ANONYMOUS" "DOHASH" "DOVECTOR"
+ "NAMED-LAMBDA"
"NAMED-LET"
"ONCE-ONLY"
"DEFENUM"
;; symbol-hacking idioms
"KEYWORDICATE" "SYMBOLICATE"
- ;; search lists (FIXME: should go away)
- "ENUMERATE-SEARCH-LIST"
- "CLEAR-SEARCH-LIST"
- "SEARCH-LIST"
- "SEARCH-LIST-DEFINED-P"
-
;; certainly doesn't belong in public extensions
;; FIXME: maybe belongs in %KERNEL with other typesystem stuff?
"CONSTANT-ARGUMENT"
;; various internal defaults
"*DEFAULT-PACKAGE-USE-LIST*"
- "DEFAULT-INIT-CHAR"
+ "DEFAULT-INIT-CHAR" "*DEFAULT-INIT-CHAR-FORM*"
"*LOAD-SOURCE-DEFAULT-TYPE*"
;; hash caches
;; indenting
"MAKE-INDENTING-STREAM"
- "INDENTING-FURTHER"
;; stream commands, used by the debugger
"GET-STREAM-COMMAND" "MAKE-STREAM-COMMAND" "STREAM-COMMAND"
;; 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"
;; need it:
"*EOF-OBJECT*"
+ ;; alien interface utilities
+ "C-STRINGS->STRING-LIST"
+
;; misc. utilities used internally
"LEGAL-FUNCTION-NAME-P"
"FUNCTION-NAME-BLOCK-NAME"
"PACKAGE-INTERNAL-SYMBOL-COUNT" "PACKAGE-EXTERNAL-SYMBOL-COUNT"
"PROPER-LIST-OF-LENGTH-P"
"LIST-OF-LENGTH-AT-LEAST-P"
+ "LIST-WITH-LENGTH-P"
"READ-SEQUENCE-OR-DIE"
"RENAME-KEY-ARGS"
"REQUIRED-ARGUMENT"
"FEATUREP"
"FLUSH-STANDARD-OUTPUT-STREAMS"
"MAKE-GENSYM-LIST"
- "DEFCONSTANT-EQX"
"ABOUT-TO-MODIFY"
"PRINT-PRETTY-ON-STREAM-P"
+ "LOOKS-LIKE-NAME-OF-SPECIAL-VAR-P"
+ "POSITIVE-PRIMEP"
;; 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.
- "DEFAULT-DIRECTORY"
- "GET-FLOATING-POINT-MODES" "SET-FLOATING-POINT-MODES"
+ "GET-FLOATING-POINT-MODES"
+ "SET-FLOATING-POINT-MODES"
"WITH-FLOAT-TRAPS-MASKED"
"DEFINE-HASH-TABLE-TEST"
- "*GC-INHIBIT-HOOK*"
;; 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
+ ;; a sort of quasi-unbound tag for use in hash tables
"+EMPTY-HT-SLOT+"
- ;; not used any more, I think -- WHN 19991206
- #+nil
- ("SERVE-BUTTON-PRESS"
- "SERVE-BUTTON-RELEASE" "SERVE-CIRCULATE-NOTIFY"
- "SERVE-CIRCULATE-REQUEST" "SERVE-CLIENT-MESSAGE"
- "SERVE-COLORMAP-NOTIFY" "SERVE-CONFIGURE-NOTIFY"
- "SERVE-CONFIGURE-REQUEST" "SERVE-CREATE-NOTIFY"
- "SERVE-DESTROY-NOTIFY" "SERVE-ENTER-NOTIFY" "SERVE-EXPOSURE"
- "SERVE-FOCUS-IN" "SERVE-FOCUS-OUT" "SERVE-GRAPHICS-EXPOSURE"
- "SERVE-GRAVITY-NOTIFY" "SERVE-KEY-PRESS" "SERVE-KEY-RELEASE"
- "SERVE-LEAVE-NOTIFY" "SERVE-MAP-NOTIFY" "SERVE-MAP-REQUEST"
- "SERVE-MOTION-NOTIFY" "SERVE-NO-EXPOSURE" "SERVE-PROPERTY-NOTIFY"
- "SERVE-REPARENT-NOTIFY" "SERVE-RESIZE-REQUEST"
- "SERVE-SELECTION-CLEAR" "SERVE-SELECTION-NOTIFY"
- "SERVE-SELECTION-REQUEST" "SERVE-UNMAP-NOTIFY"
- "SERVE-VISIBILITY-NOTIFY")))
+ ;; 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-VARIABLE-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"))
#s(sb-cold:package-data
:name "SB!ITERATE"
"MAXIMIZING" "MINIMIZING" "SUMMING"
"*ITERATE-WARNINGS*"))
+ ;; 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.)
#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 for blurring of boundaries."
+is a good idea, but see SB-SYS re. blurring of boundaries."
:use ("CL" "SB!ALIEN" "SB!ALIEN-INTERNALS" "SB!BIGNUM"
- "SB!EXT" "SB!INT" "SB!SYS" "SB!GRAY")
+ "SB!EXT" "SB!FASL" "SB!INT" "SB!SYS" "SB!GRAY")
:import-from (("SB!C-CALL" "VOID"))
:reexport ("DEF!STRUCT" "DEF!MACRO" "VOID" "WEAK-POINTER-P")
:export ("%ACOS" "%ACOSH" "%ARRAY-AVAILABLE-ELEMENTS"
"%CLOSURE-INDEX-REF" "%COS" "%COS-QUICK"
"%COSH" "%DEPOSIT-FIELD"
"%DOUBLE-FLOAT" "%DPB" "%EXP" "%EXPM1"
+ "%FIND-POSITION" "%FIND-POSITION-VECTOR-MACRO"
+ "%FIND-POSITION-IF" "%FIND-POSITION-IF-VECTOR-MACRO"
"%HYPOT" "%INSTANCE-SET-CONDITIONAL" "%LDB"
"%LOG" "%LOGB" "%LOG10" "%LOG1P" "%LONG-FLOAT"
"%MAKE-COMPLEX" "%MAKE-FUNCALLABLE-INSTANCE" "%MAKE-RATIO"
"%SQRT" "%SXHASH-SIMPLE-STRING"
"%SXHASH-SIMPLE-SUBSTRING" "%TAN" "%TAN-QUICK"
"%TANH" "%UNARY-ROUND" "%UNARY-TRUNCATE"
- "%WITH-ARRAY-DATA" "WITH-ARRAY-DATA"
+ "%WITH-ARRAY-DATA" "%WITH-ARRAY-DATA-MACRO"
"*ALREADY-MAYBE-GCING*"
"*CURRENT-LEVEL*" "*EMPTY-TYPE*"
- "*EVAL-STACK-TOP*" "*GC-INHIBIT*"
+ "*EVAL-STACK*" "*EVAL-STACK-TOP*" "*GC-INHIBIT*"
"*NEED-TO-COLLECT-GARBAGE*"
"*PRETTY-PRINTER*" "*UNIVERSAL-TYPE*"
+ "*UNIVERSAL-FUNCTION-TYPE*"
"*UNPARSE-FUNCTION-TYPE-SIMPLIFY*" "*WILD-TYPE*"
"32BIT-LOGICAL-AND" "32BIT-LOGICAL-ANDC1"
"32BIT-LOGICAL-ANDC2"
"ARRAY-TYPE-P"
"ARRAY-TYPE-SPECIALIZED-ELEMENT-TYPE" "ASH-INDEX"
"ASSERT-ERROR" "BASE-CHAR-P"
- "!BEGIN-COLLECTING-COLD-INIT-FORMS"
"BINDING-STACK-POINTER-SAP" "BIT-BASH-AND"
"BIT-BASH-ANDC1"
"BIT-BASH-ANDC2" "BIT-BASH-CLEAR" "BIT-BASH-COPY"
"BIT-BASH-XOR"
"BIT-INDEX" "BOGUS-ARGUMENT-TO-VALUES-LIST-ERROR"
"BOOLE-CODE"
- "BYTE-SPECIFIER" "CALLABLE" "CASE-BODY-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-BIT-VECTOR" "COERCE-TO-FUNCTION"
+ "COERCE-TO-BIT-VECTOR" "COERCE-TO-FUNCTION" "COERCE-TO-LEXENV"
"COERCE-TO-LIST" "COERCE-TO-SIMPLE-STRING"
"COERCE-TO-SIMPLE-VECTOR" "COERCE-TO-VECTOR"
"*COLD-INIT-COMPLETE-P*"
- "!COLD-INIT-FORMS" "COMPLEX-DOUBLE-FLOAT-P"
+ "COMPLEX-DOUBLE-FLOAT-P"
"COMPLEX-FLOAT-P" "COMPLEX-LONG-FLOAT-P"
"COMPLEX-RATIONAL-P" "COMPLEX-SINGLE-FLOAT-P" "COMPLEX-VECTOR-P"
"COMPOUND-TYPE" "COMPOUND-TYPE-P" "COMPOUND-TYPE-TYPES"
"DOUBLE-FLOAT-INT-EXPONENT" "DOUBLE-FLOAT-LOW-BITS"
"DOUBLE-FLOAT-SIGNIFICAND"
"DOUBLE-FLOAT-P" "FLOAT-WAIT"
- "DYNAMIC-SPACE-FREE-POINTER"
- "!DEFUN-FROM-COLLECTED-COLD-INIT-FORMS"
- "ERROR-NUMBER-OR-LOSE" "FDOCUMENTATION" "FILENAME"
+ "DYNAMIC-SPACE-FREE-POINTER" "DYNAMIC-USAGE"
+ "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" "FUNCALLABLE-INSTANCE-P"
+ "FORM" "*FREE-INTERRUPT-CONTEXT-INDEX*" "FUNCALLABLE-INSTANCE-P"
"FUNCTION-CODE-HEADER" "FUNCTION-DOC"
"FUNCTION-TYPE"
"FUNCTION-TYPE-ALLOWP"
"HAIRY-TYPE-CHECK-TEMPLATE-NAME" "HAIRY-TYPE-SPECIFIER"
"HANDLE-CIRCULARITY" "IGNORE-IT"
"ILL-BIN" "ILL-BOUT" "ILL-IN" "ILL-OUT"
- "INDEX-TOO-LARGE-ERROR" "INTEGER-DECODE-DOUBLE-FLOAT"
+ "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"
"INTEGER-DECODE-LONG-FLOAT" "INTEGER-DECODE-SINGLE-FLOAT"
"INTERNAL-ERROR" "INTERNAL-TIME"
"INTERSECTION-TYPE" "INTERSECTION-TYPE-P"
"MAKE-NULL-LEXENV" "MAKE-NUMERIC-TYPE"
"MAKE-SINGLE-FLOAT" "MAKE-SPECIALIZABLE-ARRAY"
"%MAKE-INSTANCE"
+ "MAKE-VALUE-CELL"
"MAKE-VALUES-TYPE"
"MAYBE-GC" "MEMBER-TYPE" "MEMBER-TYPE-MEMBERS"
"MEMBER-TYPE-P" "MERGE-BITS" "MODIFIED-NUMERIC-TYPE"
- "DEFMACRO-MUNDANELY" "MUTATOR-SELF"
+ "MUTATOR-SELF"
"NAMED-TYPE" "NAMED-TYPE-NAME" "NAMED-TYPE-P"
"NATIVE-BYTE-ORDER" "NEGATE"
"NEVER-SUBTYPEP" "NIL-FUNCTION-RETURNED-ERROR"
"PACKAGE-HASHTABLE-SIZE" "PACKAGE-HASHTABLE-FREE"
"PACKAGE-INTERNAL-SYMBOLS" "PACKAGE-EXTERNAL-SYMBOLS"
"PARSE-DEFMACRO" "PARSE-LAMBDA-LIST" "PARSE-UNKNOWN-TYPE"
- "PARSE-UNKNOWN-TYPE-SPECIFIER"
- "PATHNAME-DESIGNATOR" "PUNT-PRINT-IF-TOO-LONG"
+ "PARSE-UNKNOWN-TYPE-SPECIFIER" "PATHNAME-DESIGNATOR"
+ #+x86 "*PSEUDO-ATOMIC-ATOMIC*"
+ #+x86 "*PSEUDO-ATOMIC-INTERRUPTED*"
+ "PUNT-PRINT-IF-TOO-LONG"
"READER-PACKAGE-ERROR"
- #!+gengc "*SAVED-STATE-CHAIN*"
"SCALE-DOUBLE-FLOAT" "SCALE-LONG-FLOAT"
"SCALE-SINGLE-FLOAT"
"SEQUENCE-END" "SEQUENCE-OF-CHECKED-LENGTH-GIVEN-TYPE"
- "SET-HEADER-DATA" "SHIFT-TOWARDS-END"
+ "SET-ARRAY-HEADER" "SET-HEADER-DATA" "SHIFT-TOWARDS-END"
"SHIFT-TOWARDS-START" "SHRINK-VECTOR" "SIGNED-BYTE-32-P"
"SIMPLE-ARRAY-COMPLEX-DOUBLE-FLOAT-P"
"SIMPLE-ARRAY-COMPLEX-LONG-FLOAT-P"
"STRING-TO-SIMPLE-STRING"
"SYSTEM-AREA-CLEAR"
"SYSTEM-AREA-COPY" "TWO-ARG-*"
- "TRY-TO-RENAME-INTERPRETED-FUNCTION-AS-MACRO"
"TWO-ARG-+" "TWO-ARG--"
"TWO-ARG-/" "TWO-ARG-/=" "TWO-ARG-<"
"TWO-ARG-<=" "TWO-ARG-="
"UNKNOWN-KEY-ARGUMENT-ERROR"
"UNKNOWN-TYPE" "UNKNOWN-TYPE-P"
"UNKNOWN-TYPE-SPECIFIER" "UNSEEN-THROW-TAG-ERROR"
- "UNSIGNED-BYTE-32-P" "VALUES-SPECIFIER-TYPE"
+ "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"
"VECTOR-TO-VECTOR*" "VECTOR-TO-SIMPLE-STRING*"
"VECTOR-TO-BIT-VECTOR*" "VECTOR-TO-SIMPLE-BIT-VECTOR*"
"VECTOR-OF-CHECKED-LENGTH-GIVEN-LENGTH"
+ "WITH-ARRAY-DATA"
"WITH-CIRCULARITY-DETECTION" "WITH-TYPE-CACHES"
"WRONG-NUMBER-OF-INDICES-ERROR"
"INVOKE-MACROEXPAND-HOOK"
"DEFAULT-STRUCTURE-PRINT"
"LAYOUT" "LAYOUT-LENGTH"
- "LAMBDA-WITH-ENVIRONMENT" "LAYOUT-PURE" "DSD-RAW-TYPE"
- "%COMPILER-DEFSTRUCT"
- "%COMPILER-ONLY-DEFSTRUCT" "FUNCTION-%COMPILER-ONLY-DEFSTRUCT"
+ "LAYOUT-PURE" "DSD-RAW-TYPE"
"DEFSTRUCT-DESCRIPTION" "UNDEFINE-STRUCTURE"
"DD-COPIER" "UNDEFINE-FUNCTION-NAME" "DD-TYPE"
"CLASS-STATE" "INSTANCE"
"CLASS-LAYOUT" "CLASS-%NAME"
"DD-RAW-LENGTH" "NOTE-NAME-DEFINED"
"%CODE-CODE-SIZE" "DD-SLOTS"
- "%IMAGPART" "DSD-ACCESSOR"
+ "%IMAGPART" "DSD-ACCESSOR-NAME"
"%CODE-DEBUG-INFO" "DSD-%NAME"
"LAYOUT-CLASS" "LAYOUT-INVALID"
"%FUNCTION-NAME" "DSD-TYPE" "%INSTANCEP"
"DEFSTRUCT-SLOT-DESCRIPTION" "%FUNCTION-ARGLIST"
- "%FUNCTION-NEXT" "LAYOUT-CLOS-HASH-LENGTH" "DD-PREDICATE"
+ "%FUNCTION-NEXT" "LAYOUT-CLOS-HASH-LENGTH" "DD-PREDICATE-NAME"
"CLASS-PROPER-NAME" "%NOTE-TYPE-DEFINED" "LAYOUT-INFO"
"%SET-INSTANCE-LAYOUT" "DD-DEFAULT-CONSTRUCTOR"
"LAYOUT-OF" "%FUNCTION-SELF" "%REALPART"
"%INSTANCE-LAYOUT" "LAYOUT-CLOS-HASH"
"%FUNCTION-TYPE" "PROCLAIM-AS-FUNCTION-NAME"
"BECOME-DEFINED-FUNCTION-NAME"
- "%%COMPILER-DEFSTRUCT" "%NUMERATOR" "CLASS-TYPEP"
+ "%NUMERATOR" "CLASS-TYPEP"
"STRUCTURE-CLASS-PRINT-FUNCTION" "DSD-READ-ONLY"
"LAYOUT-INHERITS" "DD-LENGTH" "%CODE-ENTRY-POINTS"
"%DENOMINATOR"
- "BYTE-FUNCTION-OR-CLOSURE" "MAKE-STANDARD-CLASS"
- "BYTE-FUNCTION-NAME" "CLASS-CELL-TYPEP" "BYTE-CLOSURE"
+ "MAKE-STANDARD-CLASS"
+ "CLASS-CELL-TYPEP"
"FIND-CLASS-CELL" "EXTRACT-FUNCTION-TYPE"
"FUNCALLABLE-STRUCTURE-CLASS"
"%RANDOM-DOUBLE-FLOAT" "%RANDOM-LONG-FLOAT"
"%RANDOM-SINGLE-FLOAT"
"RANDOM-PCL-CLASS" "BASIC-STRUCTURE-CLASS-PRINT-FUNCTION"
- "%FUNCALLABLE-INSTANCE-INFO" "*EVAL-STACK*" "RANDOM-CHUNK"
+ "%FUNCALLABLE-INSTANCE-INFO" "RANDOM-CHUNK"
"MAKE-FUNCALLABLE-STRUCTURE-CLASS" "LAYOUT-CLOS-HASH-MAX"
"CLASS-CELL-NAME" "BUILT-IN-CLASS-DIRECT-SUPERCLASSES"
- "INITIALIZE-BYTE-COMPILED-FUNCTION"
"RANDOM-LAYOUT-CLOS-HASH"
"CLASS-PCL-CLASS" "FUNCALLABLE-STRUCTURE"
"FUNCALLABLE-INSTANCE-FUNCTION"
"%FUNCALLABLE-INSTANCE-LAYOUT"
- "BASIC-STRUCTURE-CLASS" "BYTE-CLOSURE-DATA"
- "BYTE-CLOSURE-FUNCTION" "BYTE-FUNCTION" "CLASS-CELL-CLASS"
+ "BASIC-STRUCTURE-CLASS"
+ "CLASS-CELL-CLASS"
"FUNCALLABLE-STRUCTURE-CLASS-P" "REGISTER-LAYOUT"
"FUNCALLABLE-INSTANCE" "RANDOM-FIXNUM-MAX"
"MAKE-RANDOM-PCL-CLASS" "INSTANCE-LAMBDA"
"%FUNCALLABLE-INSTANCE-FUNCTION" "SYMBOL-HASH"
"MAKE-UNDEFINED-CLASS" "CLASS-DIRECT-SUPERCLASSES" "MAKE-LAYOUT"
- "BYTE-FUNCTION-TYPE"
"REDEFINE-LAYOUT-WARNING" "SLOT-CLASS"
- "INSURED-FIND-CLASS"
+ "INSURED-FIND-CLASS" "ORDER-LAYOUT-INHERITS"
+ "STD-COMPUTE-CLASS-PRECEDENCE-LIST"
;; symbols from former SB!CONDITIONS
"*HANDLER-CLUSTERS*" "*RESTART-CLUSTERS*"
"!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-COLD-INIT-OR-REINIT"
-
- ;; These belong in an "SB!LOAD" package someday.
- "*STATIC-FOREIGN-SYMBOLS*" "*ASSEMBLER-ROUTINES*"
+ "!CLASS-FINALIZE" "GC-REINIT"
;; Note: These are out of lexicographical order because in CMU CL
;; they were defined as internal symbols in package "CL"
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."
+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" "%SP-BYTE-BLT" "%SP-FIND-CHARACTER"
- "%SP-FIND-CHARACTER-WITH-ATTRIBUTE"
- "%SP-REVERSE-FIND-CHARACTER-WITH-ATTRIBUTE"
+ "%PRIMITIVE"
"%STANDARD-CHAR-P"
"*LONG-SITE-NAME*" "*SHORT-SITE-NAME*"
"*STDERR*" "*STDIN*"
"DO-DO-BODY" "DOUBLE-FLOAT-RADIX"
"ENABLE-INTERRUPT" "ENUMERATION"
"FD-STREAM" "FD-STREAM-FD"
- "FD-STREAM-P" "FIND-IF-IN-CLOSURE"
+ "FD-STREAM-P"
"FOREIGN-SYMBOL-ADDRESS" "FOREIGN-SYMBOL-ADDRESS-AS-INTEGER"
"GET-PAGE-SIZE" "GET-SYSTEM-INFO"
"IGNORE-INTERRUPT"
"OBJECT-SET-OPERATION"
"OS-COLD-INIT-OR-REINIT" "OS-CONTEXT-T" "OUTPUT-RAW-BYTES"
"PARSE-BODY" "POINTER"
- "POINTER<" "POINTER>" "PORT" "POSITIVE-PRIMEP"
+ "POINTER<" "POINTER>" "PORT"
"READ-N-BYTES" "REALLOCATE-SYSTEM-MEMORY" "RECORD-SIZE"
"REMOVE-FD-HANDLER" "REMOVE-PORT-DEATH-HANDLER"
"REMOVE-PORT-OBJECT"
needed by the current implementation of SBCL, and makes
no guarantees of interface stability."
:use ("CL" "SB!ALIEN" "SB!C-CALL" "SB!EXT" "SB!INT" "SB!SYS")
- :export ("CADDR-T" "D-INO" "D-NAME" "D-NAMLEN" "D-OFF" "D-RECLEN"
- "DADDR-T" "DEV-T" "DIRECT" "EXECGRP" "EXECOTH" "EXECOWN" "F-DUPFD"
+ :export ("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" "GET-UNIX-ERROR-MSG" "GET-ERRNO" "GID-T"
+ "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" "READGRP" "READOTH" "READOWN" "RLIM-CUR"
+ "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"
"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" "SWBLK-T"
+ "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-CHDIR" "UNIX-CHMOD" "UNIX-CHOWN" "UNIX-CLOSE" "UNIX-CONNECT"
- "UNIX-CREAT" "UNIX-CURRENT-DIRECTORY" "UNIX-DUP" "UNIX-DUP2"
+ "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-GETHOSTID" "UNIX-GETHOSTNAME"
+ "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-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-SETREGID" "UNIX-SETREUID" "UNIX-SOCKET" "UNIX-STAT"
- "UNIX-SYMLINK" "UNIX-SYNC"
- "UNIX-TIMES" "UNIX-TRUNCATE" "UNIX-TTYNAME"
+ "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" "W_OK" "X_OK" "SIGSYS" "TCSETPGRP" "FD-ZERO"
"SIGQUIT" "SIGCHLD" "SIGSEGV" "FD-CLR" "SIGUSR2"
- "EALREADY" "SIGPIPE" "EACCES" "CHECK" "SIGXCPU" "EOPNOTSUPP"
- "SIGFPE" "SIGHUP" "ENOTSOCK" "OPEN-DIR" "SIGMASK" "EINTR"
+ "EALREADY" "SIGPIPE" "CHECK" "SIGXCPU" "EOPNOTSUPP"
+ "SIGFPE" "SIGHUP" "ENOTSOCK" "EINTR"
"SIGCONT" "UNIX-RESOLVE-LINKS" "SIGKILL" "EMSGSIZE" "ERANGE"
"EPROTOTYPE" "UNIX-SIGNAL-NUMBER" "EPFNOSUPPORT" "SIGILL"
- "EDOM" "UNIX-SIGPAUSE" "EDQUOT" "FD-SETSIZE" "SIGTSTP"
+ "EDOM" "EDQUOT" "FD-SETSIZE" "SIGTSTP"
"EAFNOSUPPORT" "TCGETPGRP" "EMFILE" "ECONNRESET"
"EADDRNOTAVAIL" "SIGALRM" "ENETDOWN" "EVICEOP"
"UNIX-FAST-GETRUSAGE" "EPERM" "SIGINT" "EXDEV" "EDEADLK"
"EUSERS" "SIGVTALRM" "ENOTCONN" "ESUCCESS" "EPIPE"
"UNIX-SIMPLIFY-PATHNAME" "EISCONN" "FD-ISSET"
"ESHUTDOWN" "EBUSY" "SIGTERM" "ENAMETOOLONG" "EMLINK"
- "EADDRINUSE" "SIGBUS" "ERESTART" "TTY-PROCESS-GROUP"
+ "EADDRINUSE" "SIGBUS" "ERESTART"
"UNIX-SIGNAL-NAME" "ETIMEDOUT" "ECHILD" "EFBIG" "SIGTRAP"
"UNIX-KILLPG" "ENOTBLK" "SIGIOT" "SIGUSR1" "ECONNABORTED"
- "EHOSTUNREACH" "EBADF" "EINVAL" "FD-SET" "CLOSE-DIR" "EISDIR"
- "SIGTTIN" "UNIX-KILL" "ENOTDIR" "EHOSTDOWN" "E2BIG" "ESPIPE"
+ "EHOSTUNREACH" "EBADF" "EINVAL" "FD-SET" "EISDIR"
+ "SIGTTIN" "UNIX-KILL" "EHOSTDOWN" "E2BIG" "ESPIPE"
"UNIX-FAST-SELECT" "ENXIO" "ENOTTY" "ELOOP" "LTCHARS"
"SIGXFSZ" "EINPROGRESS" "ENOENT"
- "EPROTONOSUPPORT" "UNIX-SIGBLOCK" "SIGIO" "ENOMEM" "SIGEMT"
+ "EPROTONOSUPPORT" "SIGIO" "ENOMEM" "SIGEMT"
"EFAULT" "ENODEV" "EIO" "EVICEERR" "ETXTBSY" "EWOULDBLOCK"
"EAGAIN" "EDESTADDRREQ" "ENOEXEC" "ENETUNREACH" "ENOTEMPTY"
- "READ-DIR" "UNIX-MAYBE-PREPEND-CURRENT-DIRECTORY" "ENFILE"
+ "ENFILE"
"SIGTTOU" "EEXIST" "SIGPROF" "SIGSTOP" "ENETRESET" "SIGURG"
"ENOBUFS" "EPROCLIM" "EROFS" "ETOOMANYREFS" "UNIX-FILE-KIND"
"ELOCAL" "UNIX-SIGSETMASK" "EREMOTE" "ESOCKTNOSUPPORT"
: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!C-CALL" "SB!EXT" "SB!INT" "SB!KERNEL" "SB!SYS" "SB!UNIX")
+ :use ("CL" "SB!ALIEN" "SB!ALIEN-INTERNALS" "SB!ASSEM" "SB!C"
+ "SB!C-CALL" "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"
"BASE-CHAR-STACK-SC-NUMBER" "BASE-CHAR-TYPE"
"BIGNUM-DIGITS-OFFSET" "BIGNUM-TYPE" "BINDING-SIZE"
"BINDING-SYMBOL-SLOT" "BINDING-VALUE-SLOT" "BREAKPOINT-TRAP"
- "BYTE-CODE-CLOSURE-TYPE" "BYTE-CODE-FUNCTION-TYPE"
"BYTE-BITS" "BYTE-REG-SC-NUMBER"
"CATCH-BLOCK-CURRENT-CODE-SLOT"
"CATCH-BLOCK-CURRENT-CONT-SLOT" "CATCH-BLOCK-CURRENT-UWP-SLOT"
"BINDING-STACK-START" "BINDING-STACK-END"
"CONTROL-STACK-START" "CONTROL-STACK-END"
"DYNAMIC-SPACE-START" "DYNAMIC-SPACE-END"
+ #!-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-FASL-CODE-FORMAT" "TARGET-FASL-FILE-TYPE"
"TARGET-HEAP-ADDRESS-SPACE" "*TARGET-MOST-NEGATIVE-FIXNUM*"
"*TARGET-MOST-POSITIVE-FIXNUM*"
"STATIC-SPACE-START" "STATIC-SPACE-END"