diff options
author | kmacy <kmacy@FreeBSD.org> | 2006-10-08 02:50:34 +0000 |
---|---|---|
committer | kmacy <kmacy@FreeBSD.org> | 2006-10-08 02:50:34 +0000 |
commit | 3785d22822bc425cde879bea3c1758e71a30892a (patch) | |
tree | 6ad8c75d0dc911debb2ae132787ef8e5be588a57 /lib/csu | |
parent | e36fa6ead363211fd86ded1eefa0869c344737ba (diff) | |
download | FreeBSD-src-3785d22822bc425cde879bea3c1758e71a30892a.zip FreeBSD-src-3785d22822bc425cde879bea3c1758e71a30892a.tar.gz |
Fix TLS on sparc64 for statically and dynamically linked binaries
Approved by: rwatson (mentor)
Reviewed by: jmg and marcel
Diffstat (limited to 'lib/csu')
-rw-r--r-- | lib/csu/sparc64/crt1.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/csu/sparc64/crt1.c b/lib/csu/sparc64/crt1.c index 19c0fad..5d8e371 100644 --- a/lib/csu/sparc64/crt1.c +++ b/lib/csu/sparc64/crt1.c @@ -98,13 +98,12 @@ _start(char **ap, void (*cleanup)(void), struct Struct_Obj_Entry *obj __unused, __progname = s + 1; } - __sparc_utrap_setup(); - if (&_DYNAMIC != NULL) atexit(cleanup); - else + else { + __sparc_utrap_setup(); _init_tls(); - + } #ifdef GCRT atexit(_mcleanup); #endif |