[1/7,PowerPC64] Don't define __GI_ variant of isnan for static lib

Message ID bc97c0928d1022d9086e2eec84f61ed56c34be81.1508908224.git.amodra@gmail.com
State Committed
Delegated to: Adhemerval Zanella Netto
Headers

Commit Message

Alan Modra Oct. 25, 2017, 7:36 a.m. UTC
  It seems to me that libc.a should not contain any of the __GI_
symbols, and certainly --enable-multi-arch ought to not add to the
list.  At the end of this patch series we have the following in both
--enable-multi-arch and --disable-multi-arch libc.a:
0000000000000000 T __GI___readdir64
0000000000000000 T __GI___fxstatat64
0000000000000000 T __GI_getrlimit
0000000000000000 T __GI___getrlimit

	* sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S (hidden_def):
	Redefine only when SHARED.
  

Comments

Adhemerval Zanella Netto Oct. 30, 2017, 11:45 a.m. UTC | #1
On 25/10/2017 05:36, Alan Modra wrote:
> It seems to me that libc.a should not contain any of the __GI_
> symbols, and certainly --enable-multi-arch ought to not add to the
> list.  At the end of this patch series we have the following in both
> --enable-multi-arch and --disable-multi-arch libc.a:
> 0000000000000000 T __GI___readdir64
> 0000000000000000 T __GI___fxstatat64
> 0000000000000000 T __GI_getrlimit
> 0000000000000000 T __GI___getrlimit
> 
> 	* sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S (hidden_def):
> 	Redefine only when SHARED.

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>

> 
> diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S
> index eba0d4f..fe2d4f1 100644
> --- a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S
> +++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S
> @@ -28,8 +28,10 @@
>  
>  
>  #define __isnan __isnan_ppc64
> -#undef hidden_def
> -#define hidden_def(name) \
> -  .globl __GI___isnan ; .set __GI___isnan,__isnan_ppc64
> +#ifdef SHARED
> + #undef hidden_def
> + #define hidden_def(name) \
> +   .globl __GI___isnan ; .set __GI___isnan,__isnan_ppc64
> +#endif
>  
>  #include <sysdeps/powerpc/powerpc64/fpu/s_isnan.S>
>
  

Patch

diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S
index eba0d4f..fe2d4f1 100644
--- a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S
@@ -28,8 +28,10 @@ 
 
 
 #define __isnan __isnan_ppc64
-#undef hidden_def
-#define hidden_def(name) \
-  .globl __GI___isnan ; .set __GI___isnan,__isnan_ppc64
+#ifdef SHARED
+ #undef hidden_def
+ #define hidden_def(name) \
+   .globl __GI___isnan ; .set __GI___isnan,__isnan_ppc64
+#endif
 
 #include <sysdeps/powerpc/powerpc64/fpu/s_isnan.S>