From 5f891793819e3cd714c443c9a0a7223b4fb13dd0 Mon Sep 17 00:00:00 2001 From: Stas Boukarev Date: Thu, 31 Oct 2013 22:57:24 +0400 Subject: [PATCH] Remove *static-foreign-symbols* from #+sb-dynamic-core builds. --- package-data-list.lisp-expr | 1 + src/code/foreign.lisp | 5 ++++- src/compiler/target-disassem.lisp | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/package-data-list.lisp-expr b/package-data-list.lisp-expr index 3934e3e..4e81775 100644 --- a/package-data-list.lisp-expr +++ b/package-data-list.lisp-expr @@ -2379,6 +2379,7 @@ SB-KERNEL) have been undone, but probably more remain." "*PERIODIC-POLLING-PERIOD*" "*RUNTIME-DLHANDLE*" "*SHARED-OBJECTS*" + #!-sb-dynamic-core "*STATIC-FOREIGN-SYMBOLS*" "*STDERR*" "*STDIN*" "*STDOUT*" diff --git a/src/code/foreign.lisp b/src/code/foreign.lisp index f8fb6b9..f46b03d 100644 --- a/src/code/foreign.lisp +++ b/src/code/foreign.lisp @@ -24,7 +24,9 @@ ;;; as opposed to C's "extern"). The table contains symbols known at ;;; the time that the program was built, but not symbols defined in ;;; object files which have been loaded dynamically since then. +#!-sb-dynamic-core (declaim (type hash-table *static-foreign-symbols*)) +#!-sb-dynamic-core (defvar *static-foreign-symbols* (make-hash-table :test 'equal)) (declaim @@ -38,7 +40,8 @@ (defun find-foreign-symbol-address (name) "Returns the address of the foreign symbol NAME, or NIL. Does not enter the symbol in the linkage table, and never returns an address in the linkage-table." - (or (find-foreign-symbol-in-table name *static-foreign-symbols*) + (or #!-sb-dynamic-core + (find-foreign-symbol-in-table name *static-foreign-symbols*) (find-dynamic-foreign-symbol-address name))) (defun foreign-symbol-address (name &optional datap) diff --git a/src/compiler/target-disassem.lisp b/src/compiler/target-disassem.lisp index 0caa4a2..0603947 100644 --- a/src/compiler/target-disassem.lisp +++ b/src/compiler/target-disassem.lisp @@ -1673,6 +1673,7 @@ (when (null *assembler-routines-by-addr*) (setf *assembler-routines-by-addr* (invert-address-hash sb!fasl:*assembler-routines*)) + #!-sb-dynamic-core (setf *assembler-routines-by-addr* (invert-address-hash sb!sys:*static-foreign-symbols* *assembler-routines-by-addr*)) -- 1.7.10.4