mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-26 23:10:06 +00:00
Update.
2002-02-07 Andreas Schwab <schwab@suse.de> * configure.in: Fix check for -zcombreloc. 2002-02-06 H.J. Lu <hjl@gnu.org> * config.h.in (HAVE_BUILTIN_MEMSET): New. * configure.in: Check if __builtin_memset really works. * elf/rtld.c (_dl_start): Check HAVE_BUILTIN_MEMSET instead of __GNUC_PREREQ (2, 96) before using __builtin_memset. 2002-02-06 Jakub Jelinek <jakub@redhat.com> * io/bug-ftw3.c (main): Don't try the test if root. 2002-02-06 Martin Schwidefsky <schwidefsky@de.ibm.com> * sysdeps/unix/sysv/linux/s390/brk.c (__brk): Correct inline assembly constraints. * sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h (RLIMIT_LOCKS): Add RLIMIT_LOCKS and adjust RLIMIT_NLIMITS. * sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h (RLIMIT_LOCKS): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (clone): Make clone a weak alias for __clone. * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (clone): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: Fix typo. * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Add framestate. * sysdeps/unix/sysv/linux/s390/s390-64/Versions: New file. * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap64): Make __mmap a weak alias for __mmap64. * sysdeps/mips/atomicity.h (exchange_and_add): Not use branch likely. * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise. * sysdeps/generic/dl-tls.c: Don't read TLS header if TLS is not needed.
This commit is contained in:
parent
d4468ab788
commit
d555194cb3
40
ChangeLog
40
ChangeLog
@ -1,14 +1,46 @@
|
||||
2002-02-07 Andreas Schwab <schwab@suse.de>
|
||||
|
||||
* configure.in: Fix check for -zcombreloc.
|
||||
|
||||
2002-02-06 H.J. Lu <hjl@gnu.org>
|
||||
|
||||
* config.h.in (HAVE_BUILTIN_MEMSET): New.
|
||||
* configure.in: Check if __builtin_memset really works.
|
||||
* elf/rtld.c (_dl_start): Check HAVE_BUILTIN_MEMSET instead of
|
||||
__GNUC_PREREQ (2, 96) before using __builtin_memset.
|
||||
|
||||
2002-02-06 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* io/bug-ftw3.c (main): Don't try the test if root.
|
||||
|
||||
2002-02-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/s390/brk.c (__brk): Correct inline assembly
|
||||
constraints.
|
||||
* sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h (RLIMIT_LOCKS):
|
||||
Add RLIMIT_LOCKS and adjust RLIMIT_NLIMITS.
|
||||
* sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h (RLIMIT_LOCKS):
|
||||
Likewise.
|
||||
* sysdeps/unix/sysv/linux/s390/s390-32/clone.S (clone): Make clone
|
||||
a weak alias for __clone.
|
||||
* sysdeps/unix/sysv/linux/s390/s390-64/clone.S (clone): Likewise.
|
||||
* sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: Fix typo.
|
||||
* sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Add framestate.
|
||||
* sysdeps/unix/sysv/linux/s390/s390-64/Versions: New file.
|
||||
* sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap64): Make __mmap
|
||||
a weak alias for __mmap64.
|
||||
|
||||
2002-02-05 H.J. Lu <hjl@gnu.org>
|
||||
|
||||
* sysdeps/mips/atomicity.h (exchange_and_add): Not use branch
|
||||
likely.
|
||||
* sysdeps/mips/atomicity.h (exchange_and_add): Not use branch likely.
|
||||
(atomic_add): Likewise.
|
||||
(compare_and_swap): Likewise.
|
||||
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set):
|
||||
Likewise.
|
||||
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
|
||||
|
||||
2002-02-07 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* sysdeps/generic/dl-tls.c: Don't read TLS header if TLS is not needed.
|
||||
|
||||
* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Account for
|
||||
alignment of the TCB and store total size and alignment of static
|
||||
TLS block in _dl_tls_static_size and _dl_tls_static_align.
|
||||
|
@ -85,6 +85,9 @@
|
||||
/* Define if the compiler supports __builtin_expect. */
|
||||
#undef HAVE_BUILTIN_EXPECT
|
||||
|
||||
/* Define if the compiler supports __builtin_memset. */
|
||||
#undef HAVE_BUILTIN_MEMSET
|
||||
|
||||
/* Define if the regparm attribute shall be used for local functions
|
||||
(gcc on ix86 only). */
|
||||
#undef USE_REGPARMS
|
||||
|
123
configure
vendored
123
configure
vendored
@ -2897,12 +2897,13 @@ if eval "test \"`echo '$''{'libc_cv_z_combreloc'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.c <<EOF
|
||||
extern int bar (void);
|
||||
int foo (void) { return bar (); }
|
||||
extern int bar (int);
|
||||
extern int mumble;
|
||||
int foo (void) { return bar (mumble); }
|
||||
EOF
|
||||
if { ac_try='${CC-cc} -shared -o conftest.so conftest.c
|
||||
-nostdlib -nostartfiles
|
||||
-Wl,-z,combreloc 1>&5'; { (eval echo configure:2906: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }
|
||||
-Wl,-z,combreloc 1>&5'; { (eval echo configure:2907: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }
|
||||
then
|
||||
if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
|
||||
libc_cv_z_combreloc=yes
|
||||
@ -2927,12 +2928,12 @@ fi
|
||||
|
||||
if test $elf != yes; then
|
||||
echo $ac_n "checking for .init and .fini sections""... $ac_c" 1>&6
|
||||
echo "configure:2931: checking for .init and .fini sections" >&5
|
||||
echo "configure:2932: checking for .init and .fini sections" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_have_initfini'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2936 "configure"
|
||||
#line 2937 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
int main() {
|
||||
@ -2941,7 +2942,7 @@ asm (".section .init");
|
||||
asm ("${libc_cv_dot_text}");
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2945: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:2946: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
libc_cv_have_initfini=yes
|
||||
else
|
||||
@ -2964,7 +2965,7 @@ fi
|
||||
|
||||
if test $elf = yes -a $gnu_ld = yes; then
|
||||
echo $ac_n "checking whether cc puts quotes around section names""... $ac_c" 1>&6
|
||||
echo "configure:2968: checking whether cc puts quotes around section names" >&5
|
||||
echo "configure:2969: checking whether cc puts quotes around section names" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_have_section_quotes'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -3001,19 +3002,19 @@ if test $elf = yes; then
|
||||
else
|
||||
if test $ac_cv_prog_cc_works = yes; then
|
||||
echo $ac_n "checking for _ prefix on C symbol names""... $ac_c" 1>&6
|
||||
echo "configure:3005: checking for _ prefix on C symbol names" >&5
|
||||
echo "configure:3006: checking for _ prefix on C symbol names" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_asm_underscores'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3010 "configure"
|
||||
#line 3011 "configure"
|
||||
#include "confdefs.h"
|
||||
asm ("_glibc_foobar:");
|
||||
int main() {
|
||||
glibc_foobar ();
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3017: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:3018: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
libc_cv_asm_underscores=yes
|
||||
else
|
||||
@ -3028,17 +3029,17 @@ fi
|
||||
echo "$ac_t""$libc_cv_asm_underscores" 1>&6
|
||||
else
|
||||
echo $ac_n "checking for _ prefix on C symbol names""... $ac_c" 1>&6
|
||||
echo "configure:3032: checking for _ prefix on C symbol names" >&5
|
||||
echo "configure:3033: checking for _ prefix on C symbol names" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_asm_underscores'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3037 "configure"
|
||||
#line 3038 "configure"
|
||||
#include "confdefs.h"
|
||||
void underscore_test(void) {
|
||||
return; }
|
||||
EOF
|
||||
if { (eval echo configure:3042: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:3043: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if grep _underscore_test conftest* >/dev/null; then
|
||||
rm -f conftest*
|
||||
libc_cv_asm_underscores=yes
|
||||
@ -3070,7 +3071,7 @@ if test $elf = yes; then
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for assembler .weak directive""... $ac_c" 1>&6
|
||||
echo "configure:3074: checking for assembler .weak directive" >&5
|
||||
echo "configure:3075: checking for assembler .weak directive" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_asm_weak_directive'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -3093,7 +3094,7 @@ echo "$ac_t""$libc_cv_asm_weak_directive" 1>&6
|
||||
|
||||
if test $libc_cv_asm_weak_directive = no; then
|
||||
echo $ac_n "checking for assembler .weakext directive""... $ac_c" 1>&6
|
||||
echo "configure:3097: checking for assembler .weakext directive" >&5
|
||||
echo "configure:3098: checking for assembler .weakext directive" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_asm_weakext_directive'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -3140,14 +3141,14 @@ EOF
|
||||
;;
|
||||
hppa*linux*)
|
||||
echo $ac_n "checking for assembler line separator""... $ac_c" 1>&6
|
||||
echo "configure:3144: checking for assembler line separator" >&5
|
||||
echo "configure:3145: checking for assembler line separator" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_asm_line_sep'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.s <<EOF
|
||||
nop ; is_old_puffin
|
||||
EOF
|
||||
if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:3151: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:3152: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
libc_cv_asm_line_sep='!'
|
||||
else
|
||||
if test -z "$enable_hacker_mode"; then
|
||||
@ -3169,7 +3170,7 @@ EOF
|
||||
esac
|
||||
|
||||
echo $ac_n "checking for ld --no-whole-archive""... $ac_c" 1>&6
|
||||
echo "configure:3173: checking for ld --no-whole-archive" >&5
|
||||
echo "configure:3174: checking for ld --no-whole-archive" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_ld_no_whole_archive'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -3180,7 +3181,7 @@ __throw () {}
|
||||
EOF
|
||||
if { ac_try='${CC-cc} $CFLAGS
|
||||
-nostdlib -nostartfiles -Wl,--no-whole-archive
|
||||
-o conftest conftest.c 1>&5'; { (eval echo configure:3184: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
-o conftest conftest.c 1>&5'; { (eval echo configure:3185: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
libc_cv_ld_no_whole_archive=yes
|
||||
else
|
||||
libc_cv_ld_no_whole_archive=no
|
||||
@ -3194,7 +3195,7 @@ if test $libc_cv_ld_no_whole_archive = yes; then
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for gcc -fexceptions""... $ac_c" 1>&6
|
||||
echo "configure:3198: checking for gcc -fexceptions" >&5
|
||||
echo "configure:3199: checking for gcc -fexceptions" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_gcc_exceptions'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -3205,7 +3206,7 @@ __throw () {}
|
||||
EOF
|
||||
if { ac_try='${CC-cc} $CFLAGS
|
||||
-nostdlib -nostartfiles -fexceptions
|
||||
-o conftest conftest.c 1>&5'; { (eval echo configure:3209: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
-o conftest conftest.c 1>&5'; { (eval echo configure:3210: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
libc_cv_gcc_exceptions=yes
|
||||
else
|
||||
libc_cv_gcc_exceptions=no
|
||||
@ -3220,14 +3221,14 @@ fi
|
||||
|
||||
if test "$base_machine" = alpha ; then
|
||||
echo $ac_n "checking for function ..ng prefix""... $ac_c" 1>&6
|
||||
echo "configure:3224: checking for function ..ng prefix" >&5
|
||||
echo "configure:3225: checking for function ..ng prefix" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_gcc_alpha_ng_prefix'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.c <<\EOF
|
||||
foo () { }
|
||||
EOF
|
||||
if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "\$foo..ng" > /dev/null'; { (eval echo configure:3231: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; };
|
||||
if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "\$foo..ng" > /dev/null'; { (eval echo configure:3232: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; };
|
||||
then
|
||||
libc_cv_gcc_alpha_ng_prefix=yes
|
||||
else
|
||||
@ -3254,19 +3255,19 @@ if test "$host_cpu" = powerpc ; then
|
||||
# Check for a bug present in at least versions 2.8.x of GCC
|
||||
# and versions 1.0.x of EGCS.
|
||||
echo $ac_n "checking whether clobbering cr0 causes problems""... $ac_c" 1>&6
|
||||
echo "configure:3258: checking whether clobbering cr0 causes problems" >&5
|
||||
echo "configure:3259: checking whether clobbering cr0 causes problems" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_c_asmcr0_bug'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3263 "configure"
|
||||
#line 3264 "configure"
|
||||
#include "confdefs.h"
|
||||
int tester(int x) { asm ("" : : : "cc"); return x & 123; }
|
||||
int main() {
|
||||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3270: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:3271: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
libc_cv_c_asmcr0_bug='no'
|
||||
else
|
||||
@ -3288,12 +3289,12 @@ fi
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for DWARF2 unwind info support""... $ac_c" 1>&6
|
||||
echo "configure:3292: checking for DWARF2 unwind info support" >&5
|
||||
echo "configure:3293: checking for DWARF2 unwind info support" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_gcc_dwarf2_unwind_info'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.c <<EOF
|
||||
#line 3297 "configure"
|
||||
#line 3298 "configure"
|
||||
static char __EH_FRAME_BEGIN__;
|
||||
_start ()
|
||||
{
|
||||
@ -3320,7 +3321,7 @@ __bzero () {}
|
||||
EOF
|
||||
if { ac_try='${CC-cc} $CFLAGS -DCHECK__register_frame_info
|
||||
-nostdlib -nostartfiles
|
||||
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:3324: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:3325: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
libc_cv_gcc_dwarf2_unwind_info=static
|
||||
else
|
||||
libc_cv_gcc_dwarf2_unwind_info=no
|
||||
@ -3328,7 +3329,7 @@ fi
|
||||
if test $libc_cv_gcc_dwarf2_unwind_info = no; then
|
||||
if { ac_try='${CC-cc} $CFLAGS -DCHECK__register_frame
|
||||
-nostdlib -nostartfiles
|
||||
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:3332: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:3333: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
libc_cv_gcc_dwarf2_unwind_info=yes
|
||||
else
|
||||
libc_cv_gcc_dwarf2_unwind_info=no
|
||||
@ -3358,12 +3359,12 @@ EOF
|
||||
esac
|
||||
|
||||
echo $ac_n "checking for __builtin_expect""... $ac_c" 1>&6
|
||||
echo "configure:3362: checking for __builtin_expect" >&5
|
||||
echo "configure:3363: checking for __builtin_expect" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_gcc_builtin_expect'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.c <<EOF
|
||||
#line 3367 "configure"
|
||||
#line 3368 "configure"
|
||||
int foo (int a)
|
||||
{
|
||||
a = __builtin_expect (a, 10);
|
||||
@ -3371,7 +3372,7 @@ int foo (int a)
|
||||
}
|
||||
EOF
|
||||
if { ac_try='${CC-cc} $CFLAGS -nostdlib -nostartfiles
|
||||
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:3375: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:3376: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
libc_cv_gcc_builtin_expect=yes
|
||||
else
|
||||
libc_cv_gcc_builtin_expect=no
|
||||
@ -3387,13 +3388,41 @@ EOF
|
||||
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for __builtin_memset""... $ac_c" 1>&6
|
||||
echo "configure:3393: checking for __builtin_memset" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_gcc_builtin_memset'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.c <<\EOF
|
||||
void zero (void *x)
|
||||
{
|
||||
__builtin_memset (x, 0, 4);
|
||||
}
|
||||
EOF
|
||||
if { ac_try='${CC-cc} -O3 -S conftest.c -o - | fgrep "memset" > /dev/null'; { (eval echo configure:3403: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; };
|
||||
then
|
||||
libc_cv_gcc_builtin_memset=no
|
||||
else
|
||||
libc_cv_gcc_builtin_memset=yes
|
||||
fi
|
||||
rm -f conftest*
|
||||
fi
|
||||
|
||||
echo "$ac_t""$libc_cv_gcc_builtin_memset" 1>&6
|
||||
if test "$libc_cv_gcc_builtin_memset" = yes ; then
|
||||
cat >> confdefs.h <<\EOF
|
||||
#define HAVE_BUILTIN_MEMSET 1
|
||||
EOF
|
||||
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for local label subtraction""... $ac_c" 1>&6
|
||||
echo "configure:3392: checking for local label subtraction" >&5
|
||||
echo "configure:3421: checking for local label subtraction" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_gcc_subtract_local_labels'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.c <<EOF
|
||||
#line 3397 "configure"
|
||||
#line 3426 "configure"
|
||||
int foo (int a)
|
||||
{
|
||||
static const int ar[] = { &&l1 - &&l1, &&l2 - &&l1 };
|
||||
@ -3406,7 +3435,7 @@ int foo (int a)
|
||||
}
|
||||
EOF
|
||||
if { ac_try='${CC-cc} $CFLAGS -nostdlib -nostartfiles
|
||||
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:3410: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
-o conftest conftest.c -lgcc >&5'; { (eval echo configure:3439: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
|
||||
libc_cv_gcc_subtract_local_labels=yes
|
||||
else
|
||||
libc_cv_gcc_subtract_local_labels=no
|
||||
@ -3423,7 +3452,7 @@ EOF
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for libgd""... $ac_c" 1>&6
|
||||
echo "configure:3427: checking for libgd" >&5
|
||||
echo "configure:3456: checking for libgd" >&5
|
||||
if test "$with_gd" != "no"; then
|
||||
old_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS $libgd_include"
|
||||
@ -3432,14 +3461,14 @@ if test "$with_gd" != "no"; then
|
||||
old_LIBS="$LIBS"
|
||||
LIBS="$LIBS -lgd -lpng -lz -lm"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3436 "configure"
|
||||
#line 3465 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <gd.h>
|
||||
int main() {
|
||||
gdImagePng (0, 0)
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3443: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:3472: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
LIBGD=yes
|
||||
else
|
||||
@ -3459,7 +3488,7 @@ echo "$ac_t""$LIBGD" 1>&6
|
||||
|
||||
|
||||
echo $ac_n "checking size of long double""... $ac_c" 1>&6
|
||||
echo "configure:3463: checking size of long double" >&5
|
||||
echo "configure:3492: checking size of long double" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_sizeof_long_double'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -3467,7 +3496,7 @@ else
|
||||
ac_cv_sizeof_long_double=0
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3471 "configure"
|
||||
#line 3500 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <stdio.h>
|
||||
int main()
|
||||
@ -3478,7 +3507,7 @@ int main()
|
||||
return(0);
|
||||
}
|
||||
EOF
|
||||
if { (eval echo configure:3482: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
|
||||
if { (eval echo configure:3511: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
|
||||
then
|
||||
ac_cv_sizeof_long_double=`cat conftestval`
|
||||
else
|
||||
@ -3556,7 +3585,7 @@ if test "$uname" = "sysdeps/generic"; then
|
||||
fi
|
||||
|
||||
echo $ac_n "checking OS release for uname""... $ac_c" 1>&6
|
||||
echo "configure:3560: checking OS release for uname" >&5
|
||||
echo "configure:3589: checking OS release for uname" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_uname_release'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -3578,7 +3607,7 @@ echo "$ac_t""$libc_cv_uname_release" 1>&6
|
||||
uname_release="$libc_cv_uname_release"
|
||||
|
||||
echo $ac_n "checking OS version for uname""... $ac_c" 1>&6
|
||||
echo "configure:3582: checking OS version for uname" >&5
|
||||
echo "configure:3611: checking OS version for uname" >&5
|
||||
if eval "test \"`echo '$''{'libc_cv_uname_version'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -3600,7 +3629,7 @@ else
|
||||
fi
|
||||
|
||||
echo $ac_n "checking stdio selection""... $ac_c" 1>&6
|
||||
echo "configure:3604: checking stdio selection" >&5
|
||||
echo "configure:3633: checking stdio selection" >&5
|
||||
|
||||
case $stdio in
|
||||
libio) cat >> confdefs.h <<\EOF
|
||||
@ -3614,7 +3643,7 @@ echo "$ac_t""$stdio" 1>&6
|
||||
# Test for old glibc 2.0.x headers so that they can be removed properly
|
||||
# Search only in includedir.
|
||||
echo $ac_n "checking for old glibc 2.0.x headers""... $ac_c" 1>&6
|
||||
echo "configure:3618: checking for old glibc 2.0.x headers" >&5
|
||||
echo "configure:3647: checking for old glibc 2.0.x headers" >&5
|
||||
if eval test -f "${includedir}/elfclass.h" -a -f "${includedir}/fcntlbits.h"
|
||||
then
|
||||
old_glibc_headers=yes
|
||||
@ -3675,7 +3704,7 @@ if test $shared = default; then
|
||||
fi
|
||||
|
||||
echo $ac_n "checking whether -fPIC is default""... $ac_c" 1>&6
|
||||
echo "configure:3679: checking whether -fPIC is default" >&5
|
||||
echo "configure:3708: checking whether -fPIC is default" >&5
|
||||
if eval "test \"`echo '$''{'pic_default'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
|
24
configure.in
24
configure.in
@ -1065,8 +1065,9 @@ EOF
|
||||
AC_CACHE_CHECK(for -z combreloc,
|
||||
libc_cv_z_combreloc, [dnl
|
||||
cat > conftest.c <<EOF
|
||||
extern int bar (void);
|
||||
int foo (void) { return bar (); }
|
||||
extern int bar (int);
|
||||
extern int mumble;
|
||||
int foo (void) { return bar (mumble); }
|
||||
EOF
|
||||
if AC_TRY_COMMAND([${CC-cc} -shared -o conftest.so conftest.c
|
||||
-nostdlib -nostartfiles
|
||||
@ -1398,6 +1399,25 @@ if test "$libc_cv_gcc_builtin_expect" = yes; then
|
||||
AC_DEFINE(HAVE_BUILTIN_EXPECT)
|
||||
fi
|
||||
|
||||
AC_CACHE_CHECK(for __builtin_memset, libc_cv_gcc_builtin_memset, [dnl
|
||||
cat > conftest.c <<\EOF
|
||||
void zero (void *x)
|
||||
{
|
||||
__builtin_memset (x, 0, 4);
|
||||
}
|
||||
EOF
|
||||
dnl
|
||||
if AC_TRY_COMMAND([${CC-cc} -O3 -S conftest.c -o - | fgrep "memset" > /dev/null]);
|
||||
then
|
||||
libc_cv_gcc_builtin_memset=no
|
||||
else
|
||||
libc_cv_gcc_builtin_memset=yes
|
||||
fi
|
||||
rm -f conftest* ])
|
||||
if test "$libc_cv_gcc_builtin_memset" = yes ; then
|
||||
AC_DEFINE(HAVE_BUILTIN_MEMSET)
|
||||
fi
|
||||
|
||||
dnl Check whether the compiler supports subtraction of local labels.
|
||||
AC_CACHE_CHECK(for local label subtraction, libc_cv_gcc_subtract_local_labels,
|
||||
[cat > conftest.c <<EOF
|
||||
|
10
elf/rtld.c
10
elf/rtld.c
@ -130,7 +130,7 @@ _dl_start (void *arg)
|
||||
{
|
||||
struct link_map bootstrap_map;
|
||||
hp_timing_t start_time;
|
||||
#if !__GNUC_PREREQ (2, 96)
|
||||
#ifndef HAVE_BUILTIN_MEMSET
|
||||
size_t cnt;
|
||||
#endif
|
||||
|
||||
@ -150,7 +150,7 @@ _dl_start (void *arg)
|
||||
`memset' since it might not be built in or inlined and we cannot
|
||||
make function calls at this point. Use '__builtin_memset' if we
|
||||
know it is available. */
|
||||
#if __GNUC_PREREQ (2, 96)
|
||||
#ifdef HAVE_BUILTIN_MEMSET
|
||||
__builtin_memset (bootstrap_map.l_info, '\0', sizeof (bootstrap_map.l_info));
|
||||
#else
|
||||
for (cnt = 0;
|
||||
@ -1366,6 +1366,12 @@ of this helper program; chances are you did not intend to run this program.\n\
|
||||
/* This means we actually have some modules which use TLS.
|
||||
Computer the TLS offsets for the various blocks. */
|
||||
_dl_determine_tlsoffset (GL(dl_initimage_list)->l_tls_nextimage);
|
||||
|
||||
/* Construct the static TLS block and the dtv for the initial
|
||||
thread. For some platforms this will include allocating memory
|
||||
for the thread descriptor. The memory for the TLS block will
|
||||
never be freed. It should be allocated accordingly. The dtv
|
||||
array can be changed if dynamic loading requires it. */
|
||||
#endif
|
||||
|
||||
{
|
||||
|
@ -25,6 +25,12 @@ main (void)
|
||||
int r;
|
||||
int e;
|
||||
|
||||
if (getuid () == 0)
|
||||
{
|
||||
puts ("this test needs to be run by ordinary user");
|
||||
exit (0);
|
||||
}
|
||||
|
||||
dname = mkdtemp (tmp);
|
||||
if (dname == NULL)
|
||||
{
|
||||
|
@ -19,11 +19,11 @@
|
||||
|
||||
#include <assert.h>
|
||||
|
||||
#include <tls.h>
|
||||
|
||||
/* We don't need any of this if TLS is not supported. */
|
||||
#ifdef USE_TLS
|
||||
|
||||
#include <tls.h>
|
||||
#include <dl-tls.h>
|
||||
#include <ldsodefs.h>
|
||||
|
||||
|
@ -35,14 +35,13 @@ __brk (void *addr)
|
||||
void *newbrk;
|
||||
|
||||
{
|
||||
register long r0 asm ("2");
|
||||
register void *__addr asm("2") = addr;
|
||||
|
||||
asm ("svc %b1\n\t" /* call sys_brk */
|
||||
: "=d" (r0)
|
||||
: "=d" (__addr)
|
||||
: "I" (SYS_ify(brk)), "r" (__addr)
|
||||
: _svc_clobber );
|
||||
newbrk = (void *) r0;
|
||||
: "cc", "memory" );
|
||||
newbrk = __addr;
|
||||
}
|
||||
__curbrk = newbrk;
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Bit values & structures for resource limits. Linux version.
|
||||
Copyright (C) 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -76,7 +76,11 @@ enum __rlimit_resource
|
||||
RLIMIT_MEMLOCK = 8,
|
||||
#define RLIMIT_MEMLOCK RLIMIT_MEMLOCK
|
||||
|
||||
RLIMIT_NLIMITS = 10,
|
||||
/* Maximum number of file locks. */
|
||||
RLIMIT_LOCKS = 10,
|
||||
#define RLIMIT_LOCKS RLIMIT_LOCKS
|
||||
|
||||
RLIMIT_NLIMITS = 11,
|
||||
RLIM_NLIMITS = RLIMIT_NLIMITS
|
||||
#define RLIMIT_NLIMITS RLIMIT_NLIMITS
|
||||
#define RLIM_NLIMITS RLIM_NLIMITS
|
||||
|
@ -65,3 +65,4 @@ thread_start:
|
||||
.L1: .long _exit - .L0
|
||||
#endif
|
||||
PSEUDO_END (__clone)
|
||||
weak_alias (__clone, clone)
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Low-level statistical profiling support function. Linux/s390 version.
|
||||
Copyright (C) 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -23,5 +23,5 @@
|
||||
static void
|
||||
profil_counter (int signo, SIGCONTEXT scp)
|
||||
{
|
||||
profile_count((void *) ((unsigned long) GET_PC (scp) & 0x7fffffffUL));
|
||||
profil_count((void *) ((unsigned long) GET_PC (scp) & 0x7fffffffUL));
|
||||
}
|
||||
|
@ -2,3 +2,11 @@ ifeq ($(subdir),misc)
|
||||
sysdep_routines += setfsgid setfsuid setresgid setresuid
|
||||
sysdep_headers += sys/elf.h
|
||||
endif
|
||||
|
||||
ifeq ($(subdir),elf)
|
||||
ifeq (yes,$(build-shared))
|
||||
# This is needed to support g++ v2 and v3.
|
||||
sysdep_routines += framestate
|
||||
shared-only-routines += framestate
|
||||
endif
|
||||
endif
|
||||
|
7
sysdeps/unix/sysv/linux/s390/s390-64/Versions
Normal file
7
sysdeps/unix/sysv/linux/s390/s390-64/Versions
Normal file
@ -0,0 +1,7 @@
|
||||
libc {
|
||||
GLIBC_2.2 {
|
||||
# Exception handling support functions from libgcc
|
||||
__register_frame; __register_frame_table; __deregister_frame;
|
||||
__frame_state_for; __register_frame_info_table;
|
||||
}
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
/* Bit values & structures for resource limits. 64 bit S/390 version.
|
||||
Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -76,7 +76,12 @@ enum __rlimit_resource
|
||||
RLIMIT_AS = 9,
|
||||
#define RLIMIT_AS RLIMIT_AS
|
||||
|
||||
RLIM_NLIMITS = 10
|
||||
/* Maximum number of file locks. */
|
||||
RLIMIT_LOCKS = 10,
|
||||
#define RLIMIT_LOCKS RLIMIT_LOCKS
|
||||
|
||||
RLIMIT_NLIMITS = 11,
|
||||
RLIM_NLIMITS = RLIMIT_NLIMITS
|
||||
#define RLIMIT_NLIMITS RLIMIT_NLIMITS
|
||||
#define RLIM_NLIMITS RLIM_NLIMITS
|
||||
};
|
||||
|
@ -53,3 +53,4 @@ thread_start:
|
||||
#endif
|
||||
jg _exit@PLT /* branch to _exit -> thread termination */
|
||||
PSEUDO_END (__clone)
|
||||
weak_alias (__clone, clone)
|
||||
|
@ -64,4 +64,4 @@ PSEUDO_END (__mmap)
|
||||
|
||||
weak_alias (__mmap, mmap)
|
||||
weak_alias (__mmap, mmap64)
|
||||
|
||||
weak_alias (__mmap, __mmap64)
|
||||
|
Loading…
Reference in New Issue
Block a user