aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorNathan Whitehorn <nwhitehorn@FreeBSD.org>2010-07-10 14:39:08 +0000
committerNathan Whitehorn <nwhitehorn@FreeBSD.org>2010-07-10 14:39:08 +0000
commit8869de5e55120d55541e713b9900ce92449c58a3 (patch)
tree92bd3e3fe65198344da42c7307867731e02cde7e /lib
parent03d07f4e244ac1e2378b71d38e12171c0e939fe2 (diff)
downloadsrc-8869de5e55120d55541e713b9900ce92449c58a3.tar.gz
src-8869de5e55120d55541e713b9900ce92449c58a3.zip
The 64-bit PowerPC ABI implemented in binutils 2.15 requires some special
quirks for weak-symbol handling. Text symbols require also marking weak the special dot-symbol associated with the function, and data symbols require that you not do that. To fix this, provide a hacked __weak_reference for powerpc64, and define a new __weak_reference_data for the single weak data symbol in base. Revert after: binutils 2.17 import Obtained from: projects/ppc64
Notes
Notes: svn path=/head/; revision=209876
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/gen/_thread_init.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/libc/gen/_thread_init.c b/lib/libc/gen/_thread_init.c
index e770ee430b32..0c16d8f090d5 100644
--- a/lib/libc/gen/_thread_init.c
+++ b/lib/libc/gen/_thread_init.c
@@ -32,7 +32,8 @@ __FBSDID("$FreeBSD$");
void _thread_init_stub(void);
__weak_reference(_thread_init_stub, _thread_init);
-__weak_reference(_thread_autoinit_dummy_decl_stub, _thread_autoinit_dummy_decl);
+__weak_reference_data(_thread_autoinit_dummy_decl_stub,
+ _thread_autoinit_dummy_decl);
int _thread_autoinit_dummy_decl_stub = 0;