diff options
author | nwhitehorn <nwhitehorn@FreeBSD.org> | 2010-07-10 14:39:08 +0000 |
---|---|---|
committer | nwhitehorn <nwhitehorn@FreeBSD.org> | 2010-07-10 14:39:08 +0000 |
commit | d1c38384368935645049953f1c07565212e7fdc6 (patch) | |
tree | 92bd3e3fe65198344da42c7307867731e02cde7e /lib/libc | |
parent | f7d973d854e450f31f99793e431616d75cdd4955 (diff) | |
download | FreeBSD-src-d1c38384368935645049953f1c07565212e7fdc6.zip FreeBSD-src-d1c38384368935645049953f1c07565212e7fdc6.tar.gz |
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
Diffstat (limited to 'lib/libc')
-rw-r--r-- | lib/libc/gen/_thread_init.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/libc/gen/_thread_init.c b/lib/libc/gen/_thread_init.c index e770ee4..0c16d8f 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; |