diff options
author | David Lamparter <equinox-gentoo@diac24.net> | 2013-08-16 15:06:34 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2015-08-05 06:44:54 -0400 |
commit | 98b9c13e1abcf8d941d7934eed1a33527d6fd39b (patch) | |
tree | ed8373fe470d64e33ba13db3e2607bbdd9ca1ea8 | |
parent | ca167a22d2be6653898bfd168c9909387381e0f1 (diff) | |
download | glibc-98b9c13e1abcf8d941d7934eed1a33527d6fd39b.zip glibc-98b9c13e1abcf8d941d7934eed1a33527d6fd39b.tar.gz glibc-98b9c13e1abcf8d941d7934eed1a33527d6fd39b.tar.bz2 |
arm: fix PIC vs SHARED typos
the logic in setjmp/__longjmp incorrectly tie to "PIC" to figure out
whether the code is going into a shared library when it should be using
"SHARED". otherwise, building static PIC code goes wrong.
https://bugs.gentoo.org/336914
http://sourceware.org/ml/libc-ports/2011-09/msg00018.html
2011-09-19 David Lamparter <equinox-gentoo@diac24.net>
* sysdeps/arm/setjmp.S: Change PIC to SHARED.
* sysdeps/arm/__longjmp.S: Likewise
-rw-r--r-- | sysdeps/arm/__longjmp.S | 2 | ||||
-rw-r--r-- | sysdeps/arm/setjmp.S | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/sysdeps/arm/__longjmp.S b/sysdeps/arm/__longjmp.S index fc60a5d..1033e13 100644 --- a/sysdeps/arm/__longjmp.S +++ b/sysdeps/arm/__longjmp.S @@ -81,7 +81,7 @@ ENTRY (__longjmp) C_SYMBOL_NAME(_rtld_local_ro) \ + RTLD_GLOBAL_RO_DL_HWCAP_OFFSET) # else -# ifdef PIC +# ifdef SHARED LDR_GLOBAL (a4, a3, C_SYMBOL_NAME(_rtld_global_ro), \ RTLD_GLOBAL_RO_DL_HWCAP_OFFSET) # else diff --git a/sysdeps/arm/setjmp.S b/sysdeps/arm/setjmp.S index e44beb4..be0a4ec 100644 --- a/sysdeps/arm/setjmp.S +++ b/sysdeps/arm/setjmp.S @@ -62,7 +62,7 @@ ENTRY (__sigsetjmp) C_SYMBOL_NAME(_rtld_local_ro) \ + RTLD_GLOBAL_RO_DL_HWCAP_OFFSET) # else -# ifdef PIC +# ifdef SHARED LDR_GLOBAL (a3, a4, C_SYMBOL_NAME(_rtld_global_ro), \ RTLD_GLOBAL_RO_DL_HWCAP_OFFSET) # else |