"ALLOC-ALIEN-STACK-SPACE" "ALLOC-NUMBER-STACK-SPACE"
"ALLOCATE-CODE-OBJECT" "ALLOCATE-FRAME"
"ALLOCATE-DYNAMIC-CODE-OBJECT" "ALLOCATE-FULL-CALL-FRAME"
+ "ALWAYS-TRANSLATABLE"
"ANY" "ARG-COUNT-ERROR" "ASSEMBLE-FILE"
"ATTRIBUTES" "ATTRIBUTES-INTERSECTION" "ATTRIBUTES-UNION"
"ATTRIBUTES=" "BIND"
"INITIAL-FUN-CORE-ENTRY-TYPE-CODE"
"*!LOAD-TIME-VALUES*"
"LOAD-TYPE-PREDICATE"
+ #!+(and sb-thread sb-lutex) "LUTEX-TABLE-CORE-ENTRY-TYPE-CODE"
"NEW-DIRECTORY-CORE-ENTRY-TYPE-CODE"
"OPEN-FASL-OUTPUT" "PAGE-TABLE-CORE-ENTRY-TYPE-CODE"
"READ-ONLY-CORE-SPACE-ID"
;; People have various good reasons to mess with the GC.
"*AFTER-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*"
;; 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
;; external-format support
"OCTETS-TO-STRING" "STRING-TO-OCTETS"
+ ;; Whether to use the interpreter or the compiler for EVAL
+ "*EVALUATOR-MODE*"
+
;; timer
"TIMER" "MAKE-TIMER" "TIMER-NAME" "TIMER-SCHEDULED-P"
"SCHEDULE-TIMER" "UNSCHEDULE-TIMER" "LIST-ALL-TIMERS"))
"CHARACTER-DECODING-ERROR" "CHARACTER-DECODING-ERROR-OCTETS"
"CHARACTER-ENCODING-ERROR" "CHARACTER-ENCODING-ERROR-CODE"
"STREAM-DECODING-ERROR" "STREAM-ENCODING-ERROR"
+ "C-STRING-ENCODING-ERROR" "C-STRING-ENCODING-ERROR-EXTERNAL-FORMAT"
+ "C-STRING-DECODING-ERROR" "C-STRING-DECODING-ERROR-EXTERNAL-FORMAT"
"ATTEMPT-RESYNC" "FORCE-END-OF-FILE"
;; bootstrapping magic, to make things happen both in
"MAKE-TRIVIAL-DEFAULT-PATHNAME"
"PHYSICALIZE-PATHNAME"
"SANE-DEFAULT-PATHNAME-DEFAULTS"
+ "SBCL-HOMEDIR-PATHNAME"
;; PCOUNTERs
"FASTBIG-INCF-PCOUNTER-OR-FIXNUM"
"ADJUST-LIST"
"%FIND-PACKAGE-OR-LOSE" "FIND-UNDELETED-PACKAGE-OR-LOSE"
"SANE-PACKAGE"
- "CYCLIC-LIST-P"
+ "MAYBE-CYCLIC-P"
"COMPOUND-OBJECT-P"
"SWAPPED-ARGS-FUN"
"AND/TYPE" "NOT/TYPE"
"NTH-BUT-WITH-SANE-ARG-ORDER"
"DEPRECATION-WARNING"
"BIT-VECTOR-="
+ "READ-EVALUATED-FORM"
+ "MAKE-UNPRINTABLE-OBJECT"
;; ..and macros..
"COLLECT"
"LOOKS-LIKE-NAME-OF-SPECIAL-VAR-P"
"POSITIVE-PRIMEP"
"EVAL-IN-LEXENV"
+ "SIMPLE-EVAL-IN-LEXENV"
"DEBUG-NAMIFY"
"FORCE" "DELAY" "PROMISE-READY-P"
"FIND-RESTART-OR-CONTROL-ERROR"
"*CURRENT-LEVEL-IN-PRINT*"
"*EMPTY-TYPE*" "*GC-INHIBIT*" "*GC-PENDING*"
#!+sb-thread "*STOP-FOR-GC-PENDING*"
- "*CONTROL-STACK-EXHAUSTION-SAP*" "*UNIVERSAL-TYPE*"
+ "*UNIVERSAL-TYPE*"
"*UNIVERSAL-FUN-TYPE*" "*UNPARSE-FUN-TYPE-SIMPLIFY*"
"*WILD-TYPE*" "WORD-LOGICAL-AND" "WORD-LOGICAL-ANDC1"
"WORD-LOGICAL-ANDC2" "WORD-LOGICAL-EQV"
"PACKAGE-INTERNAL-SYMBOLS" "PACKAGE-EXTERNAL-SYMBOLS"
"PARSE-DEFMACRO" "PARSE-UNKNOWN-TYPE"
"PARSE-UNKNOWN-TYPE-SPECIFIER" "PATHNAME-DESIGNATOR"
- #!+(or x86 x86-64) "*PSEUDO-ATOMIC-ATOMIC*"
- #!+(or x86 x86-64) "*PSEUDO-ATOMIC-INTERRUPTED*"
+ #!+(or x86 x86-64) "*PSEUDO-ATOMIC-BITS*"
"PUNT-PRINT-IF-TOO-LONG" "READER-IMPOSSIBLE-NUMBER-ERROR"
"READER-PACKAGE-ERROR" "READER-EOF-ERROR"
"RESTART-DESIGNATOR"
"UNKNOWN-TYPE-SPECIFIER" "UNSEEN-THROW-TAG-ERROR"
;; FIXME: 32/64-bit issues
"UNSIGNED-BYTE-32-P" "UNSIGNED-BYTE-64-P"
+ "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"
"STANDARD-CLASSOID" "CLASSOID-OF"
"MAKE-STANDARD-CLASSOID" "CLASSOID-CELL-TYPEP"
"FIND-CLASSOID-CELL" "EXTRACT-FUN-TYPE"
- "FUNCALLABLE-STRUCTURE-CLASSOID" "%RANDOM-DOUBLE-FLOAT"
+ "%RANDOM-DOUBLE-FLOAT"
#!+long-float "%RANDOM-LONG-FLOAT"
- "%RANDOM-SINGLE-FLOAT" "RANDOM-PCL-CLASSOID"
+ "%RANDOM-SINGLE-FLOAT" "STATIC-CLASSOID"
"%FUNCALLABLE-INSTANCE-INFO" "RANDOM-CHUNK" "BIG-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"
"FUNCALLABLE-INSTANCE-FUN" "%FUNCALLABLE-INSTANCE-LAYOUT"
"%SET-FUNCALLABLE-INSTANCE-LAYOUT"
"BASIC-STRUCTURE-CLASSOID" "CLASSOID-CELL-CLASSOID"
- "FUNCALLABLE-STRUCTURE-CLASSOID-P" "REGISTER-LAYOUT"
+ "REGISTER-LAYOUT"
"FUNCALLABLE-INSTANCE" "RANDOM-FIXNUM-MAX"
- "MAKE-RANDOM-PCL-CLASSOID" "INSTANCE-LAMBDA"
+ "MAKE-STATIC-CLASSOID" "INSTANCE-LAMBDA"
"%FUNCALLABLE-INSTANCE-LEXENV" "%MAKE-SYMBOL"
"%FUNCALLABLE-INSTANCE-FUN" "SYMBOL-HASH"
:export ("*ASSEMBLY-UNIT-LENGTH*"
"*PRIMITIVE-OBJECTS*"
"AFTER-BREAKPOINT-TRAP"
+ "*ALLOC-SIGNAL*"
"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"
#!+long-float "LONG-STACK-SC-NUMBER"
"LOWTAG-LIMIT" "LOWTAG-MASK"
"LRA-SAVE-OFFSET"
+ #!+(and sb-thread sb-lutex) "LUTEX-WIDETAG"
"MEMORY-USAGE" "MOST-POSITIVE-COST"
"N-LOWTAG-BITS"
"N-FIXNUM-TAG-BITS"
;;"NESTED-WALK-FORM" "MACROEXPAND-ALL"
))
+ #!+sb-eval
+ #s(sb-cold:package-data
+ :name "SB!EVAL"
+ :doc "internal: the evaluator implementation used to execute code without compiling it."
+ :use ("CL" "SB!KERNEL" "SB!EXT")
+ :export ("INTERPRETED-FUNCTION"
+ "INTERPRETED-FUNCTION-P"
+ "INTERPRETED-FUNCTION-NAME"
+ "INTERPRETED-FUNCTION-LAMBDA-LIST"
+ "INTERPRETED-FUNCTION-DOCUMENTATION"
+ "INTERPRETED-FUNCTION-BODY"
+ "INTERPRETED-FUNCTION-SOURCE-LOCATION"
+ "EVAL-IN-ENVIRONMENT"
+ "MAKE-NULL-ENVIRONMENT"
+ "EVAL-IN-NATIVE-ENVIRONMENT"
+ "PREPARE-FOR-COMPILE"
+ "COUNT-EVAL-CALLS"
+ "*EVAL-LEVEL*"
+ "*EVAL-CALLS*"))
+
#!+win32
#s(sb-cold:package-data
:name "SB!WIN32"
"GET-LAST-ERROR" "GET-OSFHANDLE" "HANDLE"
"HANDLE-CLEAR-INPUT" "HANDLE-LISTEN" "INT-PTR"
"INVALID-HANDLE" "MILLISLEEP" "PEEK-CONSOLE-INPUT"
- "PEEK-NAMED-PIPE" "READ-FILE" "WRITE-FILE")))
+ "PEEK-NAMED-PIPE" "READ-FILE" "WRITE-FILE"
+
+ "GET-PROCESS-TIMES")))