:name "SB!ALIEN-INTERNALS"
:doc "private: stuff for implementing ALIENs and friends"
:use ("CL")
- :export ("%CAST"
+ :export ("%ALIEN-VALUE"
+ "%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"
"COMPUTE-NATURALIZE-LAMBDA" "DEFINE-ALIEN-TYPE-CLASS"
"DEFINE-ALIEN-TYPE-METHOD" "DEFINE-ALIEN-TYPE-TRANSLATOR"
"DEPORT" "DEPORT-ALLOC"
- "DEPOSIT-ALIEN-VALUE" "DISPOSE-LOCAL-ALIEN"
+ "DISPOSE-LOCAL-ALIEN"
"*ENTER-ALIEN-CALLBACK*" "ENTER-ALIEN-CALLBACK"
- "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"
"HALT"
"IF-EQ"
"IMMEDIATE-TN-P"
+ "INHIBIT-SAFEPOINTS"
"INLINE-SYNTACTIC-CLOSURE-LAMBDA"
"INSERT-STEP-CONDITIONS"
"IR2-COMPONENT-CONSTANTS" "IR2-CONVERT"
"FRAME" "FRAME-CATCHES" "FRAME-CODE-LOCATION"
"FRAME-DEBUG-FUN" "FRAME-DOWN"
"FRAME-FUN-MISMATCH" "FRAME-NUMBER" "FRAME-P" "FRAME-UP"
+ "GET-TOPLEVEL-FORM"
"REPLACE-FRAME-CATCH-TAG"
"FUN-DEBUG-FUN" "FUN-END-COOKIE-VALID-P"
"INVALID-CONTROL-STACK-POINTER" "INVALID-VALUE"
;; Other atomic operations and types related to them
"ATOMIC-INCF"
"ATOMIC-DECF"
+ "ATOMIC-UPDATE"
+ "ATOMIC-PUSH"
+ "ATOMIC-POP"
"WORD"
"MOST-POSITIVE-WORD"
"DEFINED-TYPE-NAME-P" "VALID-TYPE-SPECIFIER-P"
"DELETE-DIRECTORY"
"SET-SBCL-SOURCE-LOCATION"
+ "*DISASSEMBLE-ANNOTATE*"
;; stepping interface
"STEP-CONDITION" "STEP-FORM-CONDITION" "STEP-FINISHED-CONDITION"
"BAD-TYPE"
"CLOSED-STREAM-ERROR"
"COMPILED-PROGRAM-ERROR"
+ "COMPILER-MACRO-KEYWORD-PROBLEM"
"ENCAPSULATED-CONDITION"
"INTERPRETED-PROGRAM-ERROR"
"INVALID-ARRAY-ERROR"
"!DEF-BOOLEAN-ATTRIBUTE"
"WITH-REBOUND-IO-SYNTAX"
"WITH-SANE-IO-SYNTAX"
+ "WITH-PROGRESSIVE-TIMEOUT"
;; ..and CONDITIONs..
"BUG"
"%COERCE-CALLABLE-TO-FUN" "FUN-SUBTYPE"
"*MAXIMUM-ERROR-DEPTH*" "%SET-SYMBOL-PLIST"
"INFINITE-ERROR-PROTECT"
+ "FIND-CALLER-OF-NAMED-FRAME"
"FIND-CALLER-NAME-AND-FRAME"
"FIND-INTERRUPTED-NAME-AND-FRAME"
"%SET-SYMBOL-VALUE" "%SET-SYMBOL-GLOBAL-VALUE" "%SET-SYMBOL-PACKAGE"
"THREAD-ERROR"
"THREAD-ERROR-THREAD"
"THREAD-ALIVE-P"
+ "THREAD-EMPHEMERAL-P"
"THREAD-NAME"
"THREAD-YIELD"
;; Memory barrier
"*ALLOW-WITH-INTERRUPTS*"
"*INTERRUPTS-ENABLED*"
"*INTERRUPT-PENDING*"
+ #!+sb-thruption "*THRUPTION-PENDING*"
"*LINKAGE-INFO*"
"*LONG-SITE-NAME*" "*SHORT-SITE-NAME*"
"*PERIODIC-POLLING-FUNCTION*"
"CONTEXT-FLOATING-POINT-MODES" "CONTEXT-FLOAT-REGISTER"
"CONTEXT-PC" "CONTEXT-REGISTER"
"CONTROL-STACK-SC-NUMBER" "COUNT-NO-OPS"
+ #!+sb-safepoint "CSP-SAFEPOINT-TRAP"
"*CURRENT-CATCH-BLOCK*"
"CURRENT-FLOAT-TRAP" "DEFINE-FOR-EACH-PRIMITIVE-OBJECT"
"DESCRIPTOR-REG-SC-NUMBER" "DESCRIPTOR-VS-NON-DESCRIPTOR-STORAGE"
"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"
+ "EMIT-LONG-NOP" "ERROR-TRAP" "EVEN-FIXNUM-LOWTAG"
"EXPORTED-STATIC-SYMBOLS"
"FDEFN-FUN-SLOT" "FDEFN-NAME-SLOT" "FDEFN-RAW-ADDR-SLOT"
"FDEFN-SIZE" "FDEFN-WIDETAG" "FIXNUMIZE"
"GENCGC-RELEASE-GRANULARITY"
#!+ppc "PSEUDO-ATOMIC-INTERRUPTED-FLAG"
#!+ppc "PSEUDO-ATOMIC-FLAG"
+ #!+sb-safepoint "GLOBAL-SAFEPOINT-TRAP"
"GENESIS" "HALT-TRAP" "IGNORE-ME-SC-NUMBER"
"IMMEDIATE-CHARACTER-SC-NUMBER" "IMMEDIATE-SAP-SC-NUMBER"
"IMMEDIATE-SC-NUMBER"