From 9b9ef823581ecee546653d6ac3fd335f7b79faca Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 5 Jul 2004 17:09:54 +0000 Subject: Update. 2004-07-05 Jakub Jelinek * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp, __libc_siglongjmp): Remove symbol_version. * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp): Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4. * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias unconditionally. * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove. * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use strong_alias instead of default_symbol_version, remove symbol_version. * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise. * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change into strong_alias to __novmxsetjmp. (__vmx__setjmp): Similarly with __vmxsetjmp. (__setjmp): Make it strong_alias to __vmx__setjmp, remove default_symbol_version and symbol_version. * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change into strong_alias to __novmxsetjmp. (__vmx__setjmp): Similarly with __vmxsetjmp. (__setjmp): Make it strong_alias to __vmx__setjmp, remove default_symbol_version and symbol_version. * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h. --- sysdeps/powerpc/longjmp.c | 4 ++-- sysdeps/powerpc/novmx-longjmp.c | 4 ---- sysdeps/powerpc/novmx-sigjmp.c | 5 ----- sysdeps/powerpc/powerpc32/__longjmp.S | 4 +--- sysdeps/powerpc/powerpc32/bsd-setjmp.S | 37 ++++++++++------------------------ sysdeps/powerpc/powerpc64/__longjmp.S | 4 +--- sysdeps/powerpc/powerpc64/bsd-setjmp.S | 36 +++++++++++---------------------- sysdeps/powerpc/sigjmp.c | 6 ------ 8 files changed, 27 insertions(+), 73 deletions(-) (limited to 'sysdeps/powerpc') diff --git a/sysdeps/powerpc/longjmp.c b/sysdeps/powerpc/longjmp.c index 6d79f04b70..0345492c23 100644 --- a/sysdeps/powerpc/longjmp.c +++ b/sysdeps/powerpc/longjmp.c @@ -55,8 +55,8 @@ weak_alias (__vmx__libc_siglongjmp, __vmxlongjmp) weak_alias (__vmx__libc_siglongjmp, __vmxsiglongjmp) -default_symbol_version (__vmx__libc_longjmp, __libc_longjmp, GLIBC_2.3.4); -default_symbol_version (__vmx__libc_siglongjmp, __libc_siglongjmp, GLIBC_2.3.4); +default_symbol_version (__vmx__libc_longjmp, __libc_longjmp, GLIBC_PRIVATE); +default_symbol_version (__vmx__libc_siglongjmp, __libc_siglongjmp, GLIBC_PRIVATE); default_symbol_version (__vmx_longjmp, _longjmp, GLIBC_2.3.4); default_symbol_version (__vmxlongjmp, longjmp, GLIBC_2.3.4); default_symbol_version (__vmxsiglongjmp, siglongjmp, GLIBC_2.3.4); diff --git a/sysdeps/powerpc/novmx-longjmp.c b/sysdeps/powerpc/novmx-longjmp.c index d823239ea6..b4a6b56aa9 100644 --- a/sysdeps/powerpc/novmx-longjmp.c +++ b/sysdeps/powerpc/novmx-longjmp.c @@ -53,14 +53,10 @@ weak_alias (__novmx__libc_siglongjmp, __novmxlongjmp) weak_alias (__novmx__libc_siglongjmp, __novmxsiglongjmp) # if __WORDSIZE == 64 -symbol_version (__novmx__libc_longjmp,__libc_longjmp,GLIBC_2.3); -symbol_version (__novmx__libc_siglongjmp,__libc_siglongjmp,GLIBC_2.3); symbol_version (__novmx_longjmp,_longjmp,GLIBC_2.3); symbol_version (__novmxlongjmp,longjmp,GLIBC_2.3); symbol_version (__novmxsiglongjmp,siglongjmp,GLIBC_2.3); # else -symbol_version (__novmx__libc_longjmp,__libc_longjmp,GLIBC_2.0); -symbol_version (__novmx__libc_siglongjmp,__libc_siglongjmp,GLIBC_2.0); symbol_version (__novmx_longjmp,_longjmp,GLIBC_2.0); symbol_version (__novmxlongjmp,longjmp,GLIBC_2.0); symbol_version (__novmxsiglongjmp,siglongjmp,GLIBC_2.0); diff --git a/sysdeps/powerpc/novmx-sigjmp.c b/sysdeps/powerpc/novmx-sigjmp.c index 7489ded4a9..f5d487f52c 100644 --- a/sysdeps/powerpc/novmx-sigjmp.c +++ b/sysdeps/powerpc/novmx-sigjmp.c @@ -41,10 +41,5 @@ __novmx__sigjmp_save (__novmx__sigjmp_buf env, int savemask) return 0; } -# if __WORDSIZE == 64 -symbol_version (__novmx__sigjmp_save,__sigjmp_save,GLIBC_2.3); -# else -symbol_version (__novmx__sigjmp_save,__sigjmp_save,GLIBC_2.0); -# endif /* __WORDSIZE == 64 */ # endif /* SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) */ #endif /* !NOT_IN_libc && SHARED */ diff --git a/sysdeps/powerpc/powerpc32/__longjmp.S b/sysdeps/powerpc/powerpc32/__longjmp.S index 79c50deacd..5a050f1e71 100644 --- a/sysdeps/powerpc/powerpc32/__longjmp.S +++ b/sysdeps/powerpc/powerpc32/__longjmp.S @@ -25,15 +25,13 @@ # include "__longjmp-common.S" #else /* !NOT_IN_libc */ -/* Build a versioned object for libc. */ -default_symbol_version (__vmx__longjmp,__longjmp,GLIBC_2.3.4); +strong_alias (__vmx__longjmp, __longjmp); # define __longjmp __vmx__longjmp # include "__longjmp-common.S" # if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) # define __NO_VMX__ # undef JB_SIZE -symbol_version (__novmx__longjmp,__longjmp,GLIBC_2.0); # undef __longjmp # define __longjmp __novmx__longjmp # include "__longjmp-common.S" diff --git a/sysdeps/powerpc/powerpc32/bsd-setjmp.S b/sysdeps/powerpc/powerpc32/bsd-setjmp.S index f40785624a..159b122ca5 100644 --- a/sysdeps/powerpc/powerpc32/bsd-setjmp.S +++ b/sysdeps/powerpc/powerpc32/bsd-setjmp.S @@ -23,34 +23,19 @@ #if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) - -/* We need 2 copies of identical code for the setjmp's as gas complains - erroneously about having multiple versions of setjmp. This eliminates the - need for the strong alias of __setjmp to setjmp which - does not support versioning, i.e. another gas unimplemented feature. */ -symbol_version (__novmx__setjmp,__setjmp,GLIBC_2.0) -symbol_version (__novmxsetjmp,setjmp,GLIBC_2.0) - -ENTRY (BP_SYM (__novmxsetjmp)) +ENTRY (__novmxsetjmp) li r4,1 /* Set second argument to 1. */ - b JUMPTARGET (BP_SYM (__novmx__sigsetjmp)) -END (BP_SYM (__novmxsetjmp)) + b JUMPTARGET (__novmx__sigsetjmp) +END (__novmxsetjmp) +strong_alias (__novmxsetjmp, __novmx__setjmp) +symbol_version (__novmxsetjmp, setjmp, GLIBC_2.0) -ENTRY (BP_SYM (__novmx__setjmp)) - li r4,1 /* Set second argument to 1. */ - b JUMPTARGET (BP_SYM (__novmx__sigsetjmp)) -END (BP_SYM (__novmx__setjmp)) #endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) ) */ -default_symbol_version (__vmx__setjmp,__setjmp,GLIBC_2.3.4) -default_symbol_version (__vmxsetjmp,setjmp,GLIBC_2.3.4) - -ENTRY (BP_SYM (__vmxsetjmp)) - li r4,1 /* Set second argument to 1. */ - b JUMPTARGET (BP_SYM (__vmx__sigsetjmp)) -END (BP_SYM (__vmxsetjmp)) - -ENTRY (BP_SYM (__vmx__setjmp)) +ENTRY (__vmxsetjmp) li r4,1 /* Set second argument to 1. */ - b JUMPTARGET (BP_SYM (__vmx__sigsetjmp)) -END (BP_SYM (__vmx__setjmp)) + b JUMPTARGET (__vmx__sigsetjmp) +END (__vmxsetjmp) +strong_alias (__vmxsetjmp, __vmx__setjmp) +strong_alias (__vmx__setjmp, __setjmp) +default_symbol_version (__vmxsetjmp,setjmp,GLIBC_2.3.4) diff --git a/sysdeps/powerpc/powerpc64/__longjmp.S b/sysdeps/powerpc/powerpc64/__longjmp.S index 834ccb1691..968e9dce57 100644 --- a/sysdeps/powerpc/powerpc64/__longjmp.S +++ b/sysdeps/powerpc/powerpc64/__longjmp.S @@ -26,8 +26,7 @@ # include "__longjmp-common.S" #else /* !NOT_IN_libc */ -/* Build a versioned object for libc. */ -default_symbol_version (__vmx__longjmp,__longjmp,GLIBC_2.3.4) +strong_alias (__vmx__longjmp, __longjmp) # define __longjmp __vmx__longjmp # include "__longjmp-common.S" @@ -35,7 +34,6 @@ default_symbol_version (__vmx__longjmp,__longjmp,GLIBC_2.3.4) # define __NO_VMX__ # undef __longjmp # undef JB_SIZE -symbol_version(__novmx__longjmp,__longjmp,GLIBC_2.3) # define __longjmp __novmx__longjmp # include "__longjmp-common.S" # endif diff --git a/sysdeps/powerpc/powerpc64/bsd-setjmp.S b/sysdeps/powerpc/powerpc64/bsd-setjmp.S index 2eb191a46b..73b9a4d34e 100644 --- a/sysdeps/powerpc/powerpc64/bsd-setjmp.S +++ b/sysdeps/powerpc/powerpc64/bsd-setjmp.S @@ -23,33 +23,21 @@ #if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4) -/* We need 2 copies of identical code for the setjmp's as gas complains - erroneously about having multiple versions of setjmp. This eliminates the - need for the strong alias of __setjmp to setjmp which - does not support versioning, i.e. another gas unimplemented feature. */ -symbol_version (__novmx__setjmp,__setjmp,GLIBC_2.3) -symbol_version (__novmxsetjmp,setjmp,GLIBC_2.3) - -ENTRY (BP_SYM (__novmxsetjmp)) - li r4,1 /* Set second argument to 1. */ - b JUMPTARGET (BP_SYM (__novmx__sigsetjmp)) -END (BP_SYM (__novmxsetjmp)) -ENTRY (BP_SYM (__novmx__setjmp)) +ENTRY (__novmxsetjmp) li r4,1 /* Set second argument to 1. */ - b JUMPTARGET (BP_SYM (__novmx__sigsetjmp)) -END (BP_SYM (__novmx__setjmp)) -#endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4) */ + b JUMPTARGET (__novmx__sigsetjmp) +END (__novmxsetjmp) +strong_alias (__novmxsetjmp, __novmx__setjmp) +symbol_version (__novmxsetjmp, setjmp, GLIBC_2.3) -default_symbol_version (__vmx__setjmp,__setjmp,GLIBC_2.3.4) -default_symbol_version (__vmxsetjmp,setjmp,GLIBC_2.3.4) +#endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4) */ -ENTRY (BP_SYM (__vmxsetjmp)) - li r4,1 /* Set second argument to 1. */ - b JUMPTARGET (BP_SYM (__vmx__sigsetjmp)) -END (BP_SYM (__vmxsetjmp)) -ENTRY (BP_SYM (__vmx__setjmp)) +ENTRY (__vmxsetjmp) li r4,1 /* Set second argument to 1. */ - b JUMPTARGET (BP_SYM (__vmx__sigsetjmp)) -END (BP_SYM (__vmx__setjmp)) + b JUMPTARGET (__vmx__sigsetjmp) +END (__vmxsetjmp) +strong_alias (__vmxsetjmp, __vmx__setjmp) +strong_alias (__vmx__sigsetjmp, __setjmp) +default_symbol_version (__vmxsetjmp, setjmp, GLIBC_2.3.4) diff --git a/sysdeps/powerpc/sigjmp.c b/sysdeps/powerpc/sigjmp.c index 28cbf6b065..5c8fd9eb79 100644 --- a/sysdeps/powerpc/sigjmp.c +++ b/sysdeps/powerpc/sigjmp.c @@ -37,10 +37,4 @@ __vmx__sigjmp_save (sigjmp_buf env, int savemask) return 0; } -#if defined NOT_IN_libc -/* Build a non-versioned object for rtld-*. */ strong_alias (__vmx__sigjmp_save,__sigjmp_save) -#else -/* Build a versioned object for libc. */ -default_symbol_version (__vmx__sigjmp_save,__sigjmp_save,GLIBC_2.3.4); -#endif -- cgit 1.4.1