"INT"
"LOAD-1-FOREIGN" "LOAD-FOREIGN" "LOAD-SHARED-OBJECT" "LONG" "LONG-LONG"
"MAKE-ALIEN"
+ "MAKE-ALIEN-STRING"
"NULL-ALIEN"
- "SAP-ALIEN" "SHORT" "SIGNED" "SLOT" "STRUCT"
+ "OFF-T"
+ "SAP-ALIEN" "SHORT" "SIGNED"
+ "SIZE-T"
+ "SLOT" "STRUCT"
"UNDEFINED-ALIEN-ERROR"
"UNLOAD-SHARED-OBJECT"
"UNSIGNED"
"DEFINE-STORAGE-CLASS" "DEFINE-VOP"
"DEFKNOWN" "DEFOPTIMIZER"
"DEFTRANSFORM" "DERIVE-TYPE"
+ "EMIT-BLOCK-HEADER"
"ENTRY-NODE-INFO-NLX-TAG" "ENTRY-NODE-INFO-ST-TOP"
"PHYSENV-DEBUG-LIVE-TN" "PHYSENV-LIVE-TN"
"FAST-SYMBOL-VALUE"
"%%POP-DX"
"PREDICATE" "PRIMITIVE-TYPE" "PRIMITIVE-TYPE-OF"
"PRIMITIVE-TYPE-OR-LOSE" "PRIMITIVE-TYPE-VOP"
- "PRIMITIVE-TYPE-NAME" "PUSH-VALUES"
+ "PRIMITIVE-TYPE-NAME"
+ "PRIMITIVE-TYPE-INDIRECT-CELL-TYPE"
+ "PUSH-VALUES"
"READ-PACKED-BIT-VECTOR" "READ-VAR-INTEGER" "READ-VAR-STRING"
#!+inline-constants "REGISTER-INLINE-CONSTANT"
"RESET-STACK-POINTER" "RESTORE-DYNAMIC-STATE"
: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
+ :export (;; Information about how the program was invoked is
;; nonstandard but very useful.
"*POSIX-ARGV*" "*CORE-PATHNAME*" "*RUNTIME-PATHNAME*"
"POSIX-GETENV" "POSIX-ENVIRON"
+ ;; Customizing initfile locations
+ "*USERINIT-PATHNAME-FUNCTION*"
+ "*SYSINIT-PATHNAME-FUNCTION*"
+
;; Atomic operations and types related to them
"COMPARE-AND-SWAP"
"ATOMIC-INCF"
"GENERATION-MINIMUM-AGE-BEFORE-GC"
"GENERATION-NUMBER-OF-GCS"
"GENERATION-NUMBER-OF-GCS-BEFORE-PROMOTION"
+ "GC-LOGFILE"
;; Stack allocation control
"*STACK-ALLOCATE-DYNAMIC-EXTENT*"
;; to hide it from them..
"INTERACTIVE-EVAL"
+ ;; Used by LOAD and EVAL-WHEN to pass toplevel indexes
+ ;; to compiler.
+ "EVAL-TLF"
+
;; weak pointers and finalization
"CANCEL-FINALIZATION"
"FINALIZE"
;; Stack allocation without any questions asked
"TRULY-DYNAMIC-EXTENT"
+ ;; Like WITH-LOCKED-HASH-TABLE, but disabled interrupts
+ "WITH-LOCKED-SYSTEM-TABLE"
+
;; generic set implementation
"ADD-TO-XSET"
"ALLOC-XSET"
;; hash mixing operations
"MIX" "MIXF"
+ ;; Macroexpansion that doesn't touch special forms
+ "%MACROEXPAND"
+ "%MACROEXPAND-1"
+
;; 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
"DEFINE-HASH-CACHE"
"DEFUN-CACHED"
"DEFINE-CACHED-SYNONYM"
+ "DROP-ALL-HASH-CACHES"
;; time
"FORMAT-DECODED-TIME"
"DEBUG-NAMIFY"
"FORCE" "DELAY" "PROMISE-READY-P"
"FIND-RESTART-OR-CONTROL-ERROR"
+ "LOAD-AS-SOURCE"
;; These could be moved back into SB!EXT if someone has
;; compelling reasons, but hopefully we can get by
"UPDATE-OBJECT-LAYOUT-OR-INVALID"
"VALUE-CELL-REF" "VALUE-CELL-SET" "VALUES-SPECIFIER-TYPE"
"VALUES-SPECIFIER-TYPE-CACHE-CLEAR" "VALUES-SUBTYPEP"
- "VALUES-TYPE" "VALUES-TYPE-ERROR" "VALUES-TYPE-IN"
+ "VALUES-TYPE" "VALUES-TYPE-IN"
"VALUES-TYPE-INTERSECTION"
"VALUES-TYPE-MIN-VALUE-COUNT" "VALUES-TYPE-MAX-VALUE-COUNT"
"VALUES-TYPE-MAY-BE-SINGLE-VALUE-P" "VALUES-TYPE-OPTIONAL"
"BASIC-STRUCTURE-CLASSOID"
"REGISTER-LAYOUT"
"FUNCALLABLE-INSTANCE" "RANDOM-FIXNUM-MAX"
- "MAKE-STATIC-CLASSOID" "INSTANCE-LAMBDA"
+ "MAKE-STATIC-CLASSOID"
"%MAKE-SYMBOL"
"%FUNCALLABLE-INSTANCE-FUNCTION" "SYMBOL-HASH"
"!FOREIGN-COLD-INIT" "!FUNCTION-NAMES-COLD-INIT"
"!TYPE-CLASS-COLD-INIT" "!TYPEDEFS-COLD-INIT"
"!ALIEN-TYPE-COLD-INIT" "!CLASSES-COLD-INIT"
+ "!DEADLINE-COLD-INIT"
"!EARLY-TYPE-COLD-INIT" "!LATE-TYPE-COLD-INIT"
"!FIXUP-TYPE-COLD-INIT" "!TARGET-TYPE-COLD-INIT"
"!RANDOM-COLD-INIT" "!READER-COLD-INIT"
"SYMBOL-VALUE-IN-THREAD-ERROR"
"TERMINATE-THREAD"
"THREAD"
+ "THREAD-DEADLOCK"
+ "THREAD-DEADLOCK-CYCLE"
"THREAD-ERROR"
"THREAD-ERROR-THREAD"
"THREAD-ALIVE-P"
needed by the current implementation of SBCL, and makes
no guarantees of interface stability."
:use ("CL" "SB!ALIEN" "SB!EXT" "SB!INT" "SB!SYS")
+ :reexport ("OFF-T"
+ "SIZE-T")
:export ( ;; wrappers around Unix stuff to give just what Lisp needs
"NANOSLEEP"
"UID-USERNAME"
"USER-HOMEDIR"
"WITH-RESTARTED-SYSCALL"
"SB-MKSTEMP"
+ "FD-TYPE"
;; stuff with a one-to-one mapping to Unix constructs
"D-INO" "D-NAME" "D-NAMLEN" "D-OFF" "D-RECLEN" "DEV-T" "DIRECT"
"INO-T" "UNIX-ACCESS" "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"
+ "L_INCR" "L_SET" "L_XTND" "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"
"S-IFREG" "S-IFSOCK" "S-IREAD" "S-ISGID" "S-ISUID" "S-ISVTX"
"S-IWRITE" "SAVETEXT" "SB-MKSTEMP" "SC-MASK" "SC-ONSTACK"
"SETUIDEXEC" "SG-ERASE" "SG-FLAGS" "SG-ISPEED" "SG-KILL"
- "SG-OSPEED" "SGTTYB" "SIZE-T" "ST-ATIME" "ST-BLKSIZE" "ST-BLOCKS"
+ "SG-OSPEED" "SGTTYB" "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"
"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"
+ "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*"