X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcode%2Flinkage-table.lisp;h=cb567208a0a4e6decc99ea666dbbe0cdcce0b512;hb=3fe0010d2777b41e01ea9b4a0f894cfa40f7df1b;hp=3ccfb4c1d6fdcd15871416edd4971cb1c1f0bf5b;hpb=079ef9dad558ca07cb8178ef428bf738112174fa;p=sbcl.git diff --git a/src/code/linkage-table.lisp b/src/code/linkage-table.lisp index 3ccfb4c..cb56720 100644 --- a/src/code/linkage-table.lisp +++ b/src/code/linkage-table.lisp @@ -48,7 +48,7 @@ (let ((table-address (+ (* (hash-table-count *linkage-info*) sb!vm:linkage-table-entry-size) sb!vm:linkage-table-space-start)) - (real-address (get-dynamic-foreign-symbol-address name datap))) + (real-address (ensure-dynamic-foreign-symbol-address name datap))) (aver real-address) (unless (< table-address sb!vm:linkage-table-space-end) (error "Linkage-table full (~D entries): cannot link ~S." @@ -65,8 +65,7 @@ (sb!thread:with-mutex (*foreign-lock*) (let ((info (or (gethash name *linkage-info*) (link-foreign-symbol name datap)))) - (when info - (linkage-info-address info))))) + (linkage-info-address info)))) ;;; Update the linkage-table. Called during initialization after all ;;; shared libraries have been reopened, and after a previously loaded @@ -77,7 +76,7 @@ (let* ((datap (linkage-info-datap info)) (table-address (linkage-info-address info)) (real-address - (get-dynamic-foreign-symbol-address name datap))) + (ensure-dynamic-foreign-symbol-address name datap))) (aver (and table-address real-address)) (write-linkage-table-entry table-address real-address