-;;;; 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.
"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
"%UNWIND-PROTECT-BREAKUP"
"*BACKEND-BYTE-ORDER*" "*BACKEND-DISASSEM-PARAMS*"
- "*BACKEND-INFO-ENVIRONMENT*"
"*BACKEND-INSTRUCTION-FLAVORS*" "*BACKEND-INSTRUCTION-FORMATS*"
"*BACKEND-INTERNAL-ERRORS*" "*BACKEND-PAGE-SIZE*"
"*BACKEND-REGISTER-SAVE-PENALTY*"
"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"
+ :doc "private: originally the implementation of the IR1 interpreter,
+and now that the IR1 interpreter is gone, home to some stuff which is still
+used by the bytecode interpreter"
:use ("CL" "SB!KERNEL" "SB!INT")
- :export ("*EVAL-STACK-TRACE*" "*INTERNAL-APPLY-NODE-TRACE*"
- "FLUSH-INTERPRETED-FUNCTION-CACHE" "INTERNAL-EVAL"
+ :export #!-sb-interpreter
+ ("INTERNAL-EVAL")
+ #!+sb-interpreter
+ ("INTERNAL-EVAL"
+ #!+sb-show "*EVAL-STACK-TRACE*"
+ #!+sb-show "*INTERNAL-APPLY-NODE-TRACE*"
+ "FLUSH-INTERPRETED-FUNCTION-CACHE"
"INTERPRETED-FUNCTION"
"INTERPRETED-FUNCTION-ARGLIST"
"INTERPRETED-FUNCTION-CLOSURE"
"INTERPRETED-FUNCTION-P"
"INTERPRETED-FUNCTION-TYPE"
"MAKE-INTERPRETED-FUNCTION"
- "PRINT-INTERPRETED-FUNCTION-OBJECT"
- "TRACE-EVAL"))
+ "PRINT-INTERPRETED-FUNCTION-OBJECT"))
#s(sb-cold:package-data
:name "SB!EXT"
;; 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
;; 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"
"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"
;; 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"
+ "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"
: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!FASL" "SB!INT" "SB!SYS" "SB!GRAY")
:import-from (("SB!C-CALL" "VOID"))
"%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*"
"*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"
"DOUBLE-FLOAT-INT-EXPONENT" "DOUBLE-FLOAT-LOW-BITS"
"DOUBLE-FLOAT-SIGNIFICAND"
"DOUBLE-FLOAT-P" "FLOAT-WAIT"
- "DYNAMIC-SPACE-FREE-POINTER"
+ "DYNAMIC-SPACE-FREE-POINTER" "DYNAMIC-USAGE"
"!DEFUN-FROM-COLLECTED-COLD-INIT-FORMS"
- "ERROR-NUMBER-OR-LOSE" "FDEFINITION-OBJECT"
+ "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"
"HAIRY-TYPE-CHECK-TEMPLATE-NAME" "HAIRY-TYPE-SPECIFIER"
"HANDLE-CIRCULARITY" "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*"
"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"
"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"
"!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"
+ "!CLASS-FINALIZE" "GC-REINIT"
;; Note: These are out of lexicographical order because in CMU CL
;; they were defined as internal symbols in package "CL"
"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"
"WS-YPIXEL" "W_OK" "X_OK" "SIGSYS" "TCSETPGRP" "FD-ZERO"
"SIGQUIT" "SIGCHLD" "SIGSEGV" "FD-CLR" "SIGUSR2"
"EALREADY" "SIGPIPE" "CHECK" "SIGXCPU" "EOPNOTSUPP"
- "SIGFPE" "SIGHUP" "ENOTSOCK" "SIGMASK" "EINTR"
+ "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" "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"
"ENFILE"