\f
;;;; LOAD itself
-(define-condition fasl-header-missing (sb!ext::invalid-fasl)
+(define-condition fasl-header-missing (invalid-fasl)
((fhsss :reader invalid-fasl-fhsss :initarg :fhsss))
(:report
(lambda (condition stream)
(> (file-write-date src-tn) (file-write-date obj-tn)))
(restart-case
(error "The object file ~A is~@
- older than the presumed source:~% ~A."
+ older than the presumed source:~% ~A."
(namestring obj-tn)
(namestring src-tn))
;; FIXME: In CMU CL one of these was a CONTINUE case.
#!+sb-doc
"Load the file given by FILESPEC into the Lisp environment, returning
T on success."
-
+ (declare (ignore external-format))
(let ((*load-depth* (1+ *load-depth*))
;; KLUDGE: I can't find in the ANSI spec where it says that
;; DECLAIM/PROCLAIM of optimization policy should have file
tto)
(format t " loading to the dynamic space~%"))
- (let ((code (%primitive sb!c:allocate-dynamic-code-object
+ (let ((code (%primitive sb!c:allocate-code-object
box-num
code-length))
(index (+ sb!vm:code-trace-table-offset-slot box-num)))
\f
;;;; linkage fixups
-;;; how we learn about assembler routines and foreign symbols at startup
+;;; how we learn about assembler routines at startup
(defvar *!initial-assembler-routines*)
-(defvar *!initial-foreign-symbols*)
+
(defun !loader-cold-init ()
+ (/show0 "/!loader-cold-init")
(dolist (routine *!initial-assembler-routines*)
- (setf (gethash (car routine) *assembler-routines*) (cdr routine)))
- (dolist (symbol *!initial-foreign-symbols*)
- (setf (gethash (car symbol) *static-foreign-symbols*) (cdr symbol))))
-
-(declaim (ftype (function (string) (unsigned-byte #.sb!vm:n-machine-word-bits))
- foreign-symbol-address-as-integer))
-
-
-;;; SB!SYS:GET-DYNAMIC-FOREIGN-SYMBOL-ADDRESS is in foreign.lisp, on
-;;; platforms that have dynamic loading
-(defun foreign-symbol-address-as-integer (foreign-symbol)
- (or (find-foreign-symbol-in-table foreign-symbol *static-foreign-symbols*)
- (sb!sys:get-dynamic-foreign-symbol-address foreign-symbol)
- (error "unknown foreign symbol: ~S" foreign-symbol)))
-
-(defun foreign-symbol-address (symbol)
- (int-sap (foreign-symbol-address-as-integer
- (sb!vm:extern-alien-name symbol))))
+ (setf (gethash (car routine) *assembler-routines*) (cdr routine))))