This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch, master, updated. glibc-2.15-495-g6143dc8


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  6143dc8d006030f7235129015b988952072f4553 (commit)
       via  1e3cdfda7486316198ec0587a8aa96f50e88b3bc (commit)
       via  d6373f9ce3972a1891e4d09479a98e0dbc7e3d73 (commit)
       via  1d6c3d237d10606121c959b9bd2ae722f79ea899 (commit)
       via  ff962fb6a10c46052535d482c889b3a9e5236637 (commit)
       via  6870c2ed1f2d4ff53e7c36b252f9f2c6b6112552 (commit)
       via  8f599ddb6750b13c1283a877c0719748af181206 (commit)
       via  c93ba106176a8b03a5c25f7d6fbb50524a9530cf (commit)
       via  735095ae9566b2b14e8210e5ed44b3d5b51495f1 (commit)
       via  1221efbda91179b78dfb469ab03be063daaf8cd0 (commit)
       via  089464316444bd5923ade2e239dc653b5b071bfc (commit)
       via  9d639b991868f8d139385d4dc4bed6dd6a65c8a6 (commit)
      from  c876e002a2484d53c797140c005f3630e6abec72 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=6143dc8d006030f7235129015b988952072f4553

commit 6143dc8d006030f7235129015b988952072f4553
Author: Andreas Jaeger <aj@suse.de>
Date:   Tue Mar 27 21:37:02 2012 +0200

    Regenerate

diff --git a/sysdeps/i386/configure b/sysdeps/i386/configure
index e60b498..f56538f 100644
--- a/sysdeps/i386/configure
+++ b/sysdeps/i386/configure
@@ -391,4 +391,3 @@ if test $libc_cv_386_tls = no; then
 fi
 
 $as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
-

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=1e3cdfda7486316198ec0587a8aa96f50e88b3bc

commit 1e3cdfda7486316198ec0587a8aa96f50e88b3bc
Merge: c876e00 d6373f9
Author: Andreas Jaeger <aj@suse.de>
Date:   Tue Mar 27 21:35:36 2012 +0200

    Merge branch 'elf-move'
    
    Conflicts:
    	debug/backtracesymsfd.c
    	sysdeps/generic/elf/backtracesymsfd.c
    	sysdeps/i386/configure.in

diff --cc ChangeLog
index 069888d,e806afc..7fd0ea8
--- a/ChangeLog
+++ b/ChangeLog
@@@ -1,405 -1,3 +1,522 @@@
++2012-03-27  David S. Miller  <davem@davemloft.net>
++
++	* sysdeps/sparc/sparc64/Makefile (ASFLAGS-.os): Move before
++	have-as-vis3 check.
++
++2012-03-27  Andreas Jaeger  <aj@suse.de>
++
++	* sysdeps/x86_64/elf/configure.in: Moved to ...
++	* sysdeps/x86_64/configure.in: ... here.
++	* sysdeps/x86_64/elf/start.S: Moved to ...
++	* sysdeps/x86_64/start.S: ... here.
++	* sysdeps/x86_64/elf/configure: Delete.
++
++	* sysdeps/x86_64/configure.in: Merge contents from
++	sysdeps/i386/configure.in (without i686 check).
++
++	* sysdeps/i386/elf/Versions: Merge into ...
++	* sysdeps/i386/Versions: ... this.
++	* sysdeps/i386/elf/Versions: Delete file.
++	* sysdeps/i386/elf/start.S: Moved to ...
++	* sysdeps/i386/start.S: ...here.
++	* sysdeps/i386/elf/configure.in: Merge into...
++	* sysdeps/i386/configure.in: ...here.
++	* sysdeps/i386/elf/configure.in: Delete file.
++	* sysdeps/i386/elf/configure: Delete file.
++
++	* sysdeps/generic/elf/backtracesyms.c: Moved to ...
++	* debug/backtracesyms.c: ... here.
++	* sysdeps/generic/elf/backtracesymsfd.c: Moved to ...
++	* debug/backtracesymsfd.c: ... here.
++	* sysdeps/generic/elf/ifunc-sel.h: Moved to ...
++	* sysdeps/generic/ifunc-sel.h: ... here.
++
++	* sysdeps/unix/i386/start.c: Delete file.
++	* sysdeps/unix/sparc/start.c: Delete file.
++	* sysdeps/unix/start.c: Delete file.
++
++	* sysdeps/sh/elf/configure.in: Moved to ...
++	* sysdeps/sh/configure.in: ... here.
++	* sysdeps/sh/elf/start.S: Moved to ...
++	* sysdeps/sh/start.S: ... here.
++	* sysdeps/sh/elf/configure: Delete file.
++
++	* sysdeps/powerpc/powerpc64/elf/bzero.S: Moved to ...
++	* sysdeps/powerpc/powerpc64/bzero.S: ... here.
++	* sysdeps/powerpc/powerpc64/elf/entry.h: Moved to ...
++	* sysdeps/powerpc/powerpc64/entry.h: ... here.
++	* sysdeps/powerpc/powerpc64/elf/start.S: Moved to ...
++	* sysdeps/powerpc/powerpc64/start.S: here.
++	* sysdeps/powerpc/powerpc64/elf/Makefile: Merge into ...
++	* sysdeps/powerpc/powerpc64/Makefile: ... this.
++	* sysdeps/powerpc/powerpc64/elf/configure.in: Merge into ...
++	* sysdeps/powerpc/powerpc64/configure.in: ... this.
++	* sysdeps/powerpc/powerpc64/elf/configure: Delete file.
++
++	* sysdeps/powerpc/powerpc32/elf/bzero.S: Moved to ...
++	* sysdeps/powerpc/powerpc32/bzero.S: ... here.
++	* sysdeps/powerpc/powerpc32/elf/start.S: Moved to ...
++	* sysdeps/powerpc/powerpc32/start.S: ... here.
++	* sysdeps/powerpc/powerpc32/elf/configure.in: Merge into ...
++	* sysdeps/powerpc/powerpc32/configure.in: ... this.
++	* sysdeps/powerpc/powerpc32/elf/configure: Delete file.
++
++	* sysdeps/powerpc/elf/ifunc-sel.h: Moved to ...
++	* sysdeps/powerpc/ifunc-sel.h: ... here.
++	* sysdeps/powerpc/elf/rtld-global-offsets.sym: Moved to ...
++	* sysdeps/powerpc/rtld-global-offsets.sym: ... here.
++
++	* sysdeps/sparc/elf/configure.in: Moved to ...
++	* sysdeps/sparc/configure.in: ... here.
++	* sysdeps/sparc/elf/configure: Delete file.
++	* sysdeps/sparc/sparc32/elf/start.S: Moved to ...
++	* sysdeps/sparc/sparc32/start.S: ... here.
++	* sysdeps/sparc/sparc64/elf/start.S: Moved to ...
++	* sysdeps/sparc/sparc64/start.S: ... here.
++	* sysdeps/sparc/sparc32/elf/Makefile: Merged into ...
++	* sysdeps/sparc/sparc32/Makefile: ... this.
++	* sysdeps/sparc/sparc64/elf/Makefile: Merged into ...
++	* sysdeps/sparc/sparc64/Makefile: ... this.
++
++	* sysdeps/s390/s390-32/elf/bsd-_setjmp.S: Moved to ...
++	* sysdeps/s390/s390-32/bsd-_setjmp.S: ... here.
++	* sysdeps/s390/s390-32/elf/bsd-setjmp.S: Moved to ...
++	* sysdeps/s390/s390-32/bsd-setjmp.S: ... here.
++	* sysdeps/s390/s390-32/elf/setjmp.S: Moved to ...
++	* sysdeps/s390/s390-32/setjmp.S: ... here.
++	* sysdeps/s390/s390-32/elf/configure.in: Moved to ...
++	* sysdeps/s390/s390-32/configure.in: ... here.
++	* sysdeps/s390/s390-32/elf/configure: Delete file.
++	* sysdeps/s390/s390-32/elf/start.S: Moved to ...
++	* sysdeps/s390/s390-32/start.S: ... here.
++
++	* sysdeps/s390/s390-64/elf/bsd-_setjmp.S: Moved to ...
++	* sysdeps/s390/s390-64/bsd-_setjmp.S: ... here.
++	* sysdeps/s390/s390-64/elf/bsd-setjmp.S: Moved to ...
++	* sysdeps/s390/s390-64/bsd-setjmp.S: ... here.
++	* sysdeps/s390/s390-64/elf/setjmp.S: Moved to ...
++	* sysdeps/s390/s390-64/setjmp.S: ... here.
++	* sysdeps/s390/s390-64/elf/configure.in: Moved to ...
++	* sysdeps/s390/s390-64/configure.in: ... here
++	* sysdeps/s390/s390-64/elf/configure: Delete file.
++	* sysdeps/s390/s390-64/elf/start.S: Moved to ...
++	* sysdeps/s390/s390-64/start.S: ... here.
++	* sysdeps/s390/s390-64/elf/configure: Delete.
++
++	* configure.in: Remove support for elf directories in sysdeps.
++
++	* configure: Regenerated.
++	* sysdeps/i386/configure: Regenerated.
++	* sysdeps/powerpc/powerpc32/configure: Regenerated.
++	* sysdeps/powerpc/powerpc64/configure: Regenerated.
++	* sysdeps/s390/s390-32/configure: Regenerated.
++	* sysdeps/s390/s390-64/configure: Regenerated.
++	* sysdeps/sh/configure: Regenerated.
++	* sysdeps/sparc/configure: Regenerated.
++	* sysdeps/x86_64/configure: Regenerated.
++
 +2012-03-26  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
 +
 +	* sysdeps/ieee754/ldbl-128ibm/e_expl.c (lomark): Adjust to take
 +	denormal result into account.
 +
 +2012-03-25  Roland McGrath  <roland@hack.frob.com>
 +
 +	* posix/confstr.c (confstr): Lift RESTENVS definition to function scope.
 +	Reported by Allan McRae <allan@archlinux.org>.
 +
 +2012-03-23  Jeff Law  <law@redhat.com>
 +
 +	* nss/getnssent.c (__nss_getent): Fix typo.
 +
 +2012-03-23  David S. Miller  <davem@davemloft.net>
 +
 +	* sysdeps/sparc/fpu/libm-test-ulps: Update.
 +
 +2012-03-23  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/x86_64/dl-tlsdesc.h (tlsdesc): Use anonymous union
 +	to pad to uint64_t for each field.
 +	(dl_tls_index): Replace unsigned long with uint64_t.
 +
 +2012-03-23  Daniel Jacobowitz  <dmj@google.com>
 +	Paul Pluzhnikov  <ppluzhnikov@google.com>
 +
 +	[BZ #6528]
 +	* grp/Makefile (otherlibs): Don't set it.
 +	* inet/Makefile (otherlibs): Likewise.
 +	* login/Makefile (otherlibs): Likewise.
 +	* nscd/Makefile (otherlibs): Likewise.
 +	* posix/Makefile (otherlibs): Likewise.
 +	* pwd/Makefile (otherlibs): Likewise.
 +	* rt/Makefile (otherlibs): Likewise.
 +	* sunrpc/Makefile (otherlibs): Likewise.
 +	* nss/Makefile (otherlibs): Likewise.
 +	Add libnss_files to routines and static-only-routines.
 +	($(objpfx)getent): Remove rule.
 +	* resolv/Makefile: Add libnss_dns and libresolv to routines and
 +	static-only-routines.
 +
 +2012-03-22  Joseph Myers  <joseph@codesourcery.com>
 +
 +	[BZ #13892]
 +	* math/s_cexp.c: Include <float.h>.
 +	(__cexp): Handle exp result overflowing not necessarily
 +	overflowing both real and imaginary parts of result.
 +	* math/s_cexpf.c: Likewise.
 +	* math/s_cexpl.c: Likewise.
 +	* math/libm-test.inc (cexp_test): Add more tests.
 +	* sysdeps/i386/fpu/libm-test-ulps: Update.
 +	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
 +
 +2012-03-22  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* include/link.h (ELFW): New macro.
 +	* sysdeps/x86_64/dl-irel.h: Replace Elf64_XXX with ElfW(XXX).
 +	Replace ELF64_R_TYPE with ELFW(R_TYPE).
 +
 +2012-03-22  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/x86_64/dl-tls.h (dl_tls_index): Replace unsigned long
 +	with uint64_t.
 +
 +2012-03-22  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/generic/ldsodefs.h (struct La_x32_regs): New forward
 +	declaration.
 +	(struct La_x32_retval): Likewise.
 +
 +2012-03-22  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/x86_64/preconfigure.in: New file.
 +	* sysdeps/x86_64/preconfigure: New generated file.
 +
 +2012-03-22  Joseph Myers  <joseph@codesourcery.com>
 +
 +	[BZ #13824]
 +	* math/e_exp2l.c: Include <float.h>.
 +	(__ieee754_exp2l): Handle overflow and underflow cases
 +	separately.  Only pass fractional part of argument to
 +	__ieee754_expl.
 +	* math/libm-test.inc (exp2_test): Add more tests.
 +
 +	* sysdeps/ieee754/ldbl-128/k_cosl.c (__kernel_cosl): Negate y if
 +	negating x to take absolute value.
 +	* sysdeps/ieee754/ldbl-128/k_sincosl.c (__kernel_sincosl):
 +	Likewise.
 +	* sysdeps/ieee754/ldbl-128ibm/k_cosl.c (__kernel_cosl): Likewise.
 +	* sysdeps/ieee754/ldbl-128ibm/k_sincosl.c (__kernel_sincosl):
 +	Likewise.
 +	* sysdeps/ieee754/ldbl-128/k_sinl.c (__kernel_sinl): Negate y when
 +	computing low part if x was negated.
 +	* sysdeps/ieee754/ldbl-128ibm/k_sinl.c (__kernel_sinl): Likewise.
 +
 +2012-03-21  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* elf/tst-auditmod1.c: Support la_x32_gnu_pltenter and
 +	la_x32_gnu_pltexit.
 +	(pltexit): Cast int_retval to ptrdiff_t.
 +	* elf/tst-auditmod3b.c: Likewise.
 +	* elf/tst-auditmod4b.c: Likewise.
 +	* elf/tst-auditmod5b.c: Likewise.
 +	* elf/tst-auditmod6b.c: Likewise.
 +	* elf/tst-auditmod6c.c: Likewise.
 +	* elf/tst-auditmod7b.c: Likewise.
 +
 +	* sysdeps/generic/ldsodefs.h (audit_ifaces): Add x32_gnu_pltenter
 +	and x32_gnu_pltexit.
 +
 +	* sysdeps/x86_64/bits/link.h: Check __x86_64__ instead of
 +	__ELF_NATIVE_CLASS.
 +	(La_x32_regs): New macro.
 +	(La_x32_retval): Likewise.
 +	(la_x32_gnu_pltenter): New function prototype.
 +	(la_x32_gnu_pltexit): Likewise.
 +
 +2012-03-21  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +	* sysdeps/ieee754/ldbl-128ibm/e_powl.c (huge, tiny): Correct
 +	exponent.
 +
 +	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
 +
 +	* configure.in (libc_cv_cc_nofma): Check for option to disable
 +	generation of FMA instructions.
 +	* configure: Regenerate.
 +	* config.make.in (config-cflags-nofma): Set from libc_cv_cc_nofma.
 +	* sysdeps/ieee754/dbl-64/Makefile: New file.
 +	* sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines):
 +	Remove brandred-fma4.
 +	(CFLAGS-brandred-fma4.c): Remove.
 +	* sysdeps/x86_64/fpu/multiarch/brandred-fma4.c: Remove.
 +	* sysdeps/x86_64/fpu/multiarch/s_sin-fma4.c (__branred): Don't
 +	define.
 +	* sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c (__branred): Don't
 +	define.
 +
 +2012-03-21  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* stdio-common/_itoa.c: Check _ITOA_NEEDED instead of
 +	LLONG_MAX != LONG_MAX.
 +	(_itoa_word): Use _ITOA_WORD_TYPE on value.
 +	(_fitoa_word): Likewise.
 +	* stdio-common/_itowa.c: Check _ITOA_NEEDED instead of
 +	LLONG_MAX != LONG_MAX.
 +	* stdio-common/_itowa.h: Include <_itoa.h>.
 +	(_itowa_word): Use _ITOA_WORD_TYPE on value.
 +	(_itowa): New macro.  Defined only if _ITOA_NEEDED is false.
 +	* sysdeps/generic/_itoa.h (_ITOA_NEEDED): New macro.  Defined
 +	only if not defined.
 +	(_ITOA_WORD_TYPE): Likewise.
 +	(_itoa_word): Use _ITOA_WORD_TYPE on value.
 +	Check !_ITOA_NEEDED instead of LONG_MAX == LLONG_MAX.
 +
 +2012-03-21  David S. Miller  <davem@davemloft.net>
 +
 +	* sysdeps/sparc/fpu/libm-test-ulps: Update.
 +
 +2012-03-21  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/unix/sysv/linux/configure.in: Check x86_64* instead
 +	of x86_64 when setting libc_cv_slibdir, libdir and
 +	libc_cv_localedir.
 +	* sysdeps/unix/sysv/linux/configure: Regenerated.
 +
 +2012-03-21  Joseph Myers  <joseph@codesourcery.com>
 +
 +	* manual/lang.texi (Old Varargs): Remove section.
 +	(How Variadic): Update menu.
 +	(va_start): Do not mention varargs.h.
 +
 +2012-03-21  Thomas Schwinge  <thomas@codesourcery.com>
 +	    Joseph Myers  <joseph@codesourcery.com>
 +
 +	* configure.in (libc_cv_ssp): Use LIBC_TRY_CC_OPTION instead of a
 +	link test.
 +	* configure: Regenerated.
 +
 +2012-03-21  Thomas Schwinge  <thomas@codesourcery.com>
 +
 +        * conform/conformtest.pl: Handle --tmpdir argument, defaulting to /tmp.
 +        * conform/run-conformtest.sh: Pass --tmpdir argument when invoking
 +        conformtest.pl
 +
 +2012-03-21  Joseph Myers  <joseph@codesourcery.com>
 +
 +	* NOTES: Remove.
 +	* Makefile (files-for-dist): Remove NOTES.
 +	(NOTES): Remove rule.
 +	* README: Don't refer to NOTES.
 +	* manual/creature.texi: Don't include macros.texi.
 +	* manual/intro.texi (creature.texi): Remove comment referring to
 +	NOTES.
 +
 +	* aclocal.m4 (LIBC_TRY_CC_OPTION): New macro.
 +	* configure.in (libc_cv_cc_submachine): Use LIBC_TRY_CC_OPTION.
 +	* configure: Regenerated.
 +	* sysdeps/i386/configure.in (libc_cv_cc_sse4): Use
 +	LIBC_TRY_CC_OPTION.
 +	(libc_cv_as_i686): Likewise.
 +	(libc_cv_cc_avx): Likewise.
 +	(libc_cv_cc_sse2avx): Likewise.
 +	(libc_cv_cc_fma4): Likewise.
 +	(libc_cv_cc_novzeroupper): Likewise.
 +	* sysdeps/i386/configure: Regenerated.
 +
 +	[BZ #13883]
 +	* sysdeps/i386/fpu/s_cexp.S: Remove.
 +	* sysdeps/i386/fpu/s_cexpf.S: Likewise.
 +	* sysdeps/i386/fpu/s_cexpl.S: Likewise.
 +	* math/libm-test.inc (cexp_test): Add more tests.
 +	* sysdeps/i386/fpu/libm-test-ulps: Update.
 +	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
 +
 +2012-03-21  Allan McRae  <allan@archlinux.org>
 +
 +	* timezone/Makefile: Do not install iso3166.tab and zone.tab
 +
 +2012-03-21  Joseph Myers  <joseph@codesourcery.com>
 +
 +	[BZ #13871]
 +	* math/w_exp2.c: Do not include <float.h>.
 +	(o_threshold, u_threshold): Remove.
 +	(__exp2): Calculate result before checking finiteness and calling
 +	__kernel_standard.
 +	* math/w_exp2f.c: Likewise.
 +	* math/w_exp2l.c: Likewise.
 +	* math/libm-test.inc (exp2_test): Require overflow exception for
 +	1e6 input.
 +
 +	[BZ #3866]
 +	* sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Test for y outside the
 +	range of signed 64-bit integers before using fistpll.  Remove
 +	checks for whether integers fit in mantissa bits.
 +	* sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Test for y outside
 +	the range of signed 32-bit integers before using fistpl.  Remove
 +	checks for whether integers fit in mantissa bits.
 +	* sysdeps/i386/fpu/e_powl.S (p64): New object.
 +	(__ieee754_powl): Test for y outside the range of signed 64-bit
 +	integers before using fistpll.  Reduce 64-bit values to 63-bit
 +	ones as needed.
 +	* sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Ensure
 +	divide-by-zero is raised for zero to large negative powers.
 +	* sysdeps/x86_64/fpu/e_powl.S (p64): New object.
 +	(__ieee754_powl): Test for y outside the range of signed 64-bit
 +	integers before using fistpll.  Reduce 64-bit values to 63-bit
 +	ones as needed.
 +	* math/libm-test.inc (pow_test): Add more tests.
 +
 +2012-03-20  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* debug/backtracesymsfd.c: Include <_itoa.h> instead of
 +	<stdio-common/_itoa.h>.
 +	* debug/segfault.c: Likewise.
 +	* elf/dl-cache.c: Likewise.
 +	* elf/dl-minimal.c: Likewise.
 +	* elf/dl-misc.c: Likewise.
 +	* elf/dl-sysdep.c: Likewise.
 +	* elf/dl-version.c: Likewise.
 +	* elf/rtld.c: Likewise.
 +	* hurd/hurdsock.c: Likewise.
 +	* hurd/lookup-retry.c: Likewise.
 +	* malloc/malloc.c: Likewise.
 +	* malloc/mtrace.c: Likewise.
 +	* nscd/nscd_getgr_r.c: Likewise.
 +	* nscd/nscd_getpw_r.c: Likewise.
 +	* nscd/nscd_getserv_r.c: Likewise.
 +	* posix/getopt_init.c: Likewise.
 +	* posix/wordexp.c: Likewise.
 +	* stdio-common/_itoa.c: Likewise.
 +	* stdio-common/printf_fphex.c: Likewise.
 +	* stdio-common/vfprintf.c: Likewise.
 +	* string/_strerror.c: Likewise.
 +	* sysdeps/generic/elf/backtracesymsfd.c: Likewise.
 +	* sysdeps/i386/i686/hp-timing.h: Likewise.
 +	* sysdeps/mach/_strerror.c: Likewise.
 +	* sysdeps/mach/hurd/powerpc/register-dump.h: Likewise.
 +	* sysdeps/mach/hurd/sethostid.c: Likewise.
 +	* sysdeps/mach/hurd/xmknodat.c: Likewise.
 +	* sysdeps/mach/xpg-strerror.c: Likewise.
 +	* sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
 +	* sysdeps/powerpc/powerpc32/power4/hp-timing.h: Likewise.
 +	* sysdeps/powerpc/powerpc32/register-dump.h: Likewise.
 +	* sysdeps/powerpc/powerpc64/dl-machine.c: Likewise.
 +	* sysdeps/powerpc/powerpc64/hp-timing.h: Likewise.
 +	* sysdeps/powerpc/powerpc64/register-dump.h: Likewise.
 +	* sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
 +	* sysdeps/sparc/sparc64/hp-timing.h: Likewise.
 +	* sysdeps/unix/sysv/linux/fd_to_filename.h: Likewise.
 +	* sysdeps/unix/sysv/linux/futimes.c: Likewise.
 +	* sysdeps/unix/sysv/linux/i386/register-dump.h: Likewise.
 +	* sysdeps/unix/sysv/linux/ptsname.c: Likewise.
 +	* sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h: Likewise.
 +	* sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h: Likewise.
 +	* sysdeps/unix/sysv/linux/sh/sh3/register-dump.h: Likewise.
 +	* sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Likewise.
 +	* sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h: Likewise.
 +	* sysdeps/unix/sysv/linux/sparc/sparc64/register-dump.h: Likewise.
 +	* sysdeps/unix/sysv/linux/ttyname.c: Likewise.
 +	* sysdeps/unix/sysv/linux/ttyname_r.c: Likewise.
 +	* sysdeps/unix/sysv/linux/x86_64/register-dump.h: Likewise.
 +
 +	* stdio-common/_itoa.c: Include <_itoa.h> instead of "_itoa.h".
 +
 +	* stdio-common/_itoa.h: Moved to ...
 +	* sysdeps/generic/_itoa.h: Here.
 +
 +	* stdio-common/_itowa.c: Include <_itowa.h> instead of "_itowa.h".
 +
 +	* stdio-common/printf_fphex.c: Include <_itoa.h> and <_itowa.h>
 +	instead of "_itoa.h" and "_itowa.h".
 +	* stdio-common/vfprintf.: Likewise.
 +
 +2012-03-20  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/x86_64/fpu/bits/mathinline.h: Don't include
 +	<bits/wordsize.h>.
 +	(__signbitf): Check __x86_64__ instead of __WORDSIZE.
 +	(__signbit): Likwise.
 +	(llrintf): Likwise.
 +	(llrint): Likwise.
 +
 +2012-03-20  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/x86_64/bits/setjmp.h (__jmp_buf): Support x86-64 with
 +	__WORDSIZE != 64.
 +
 +2012-03-20  Joseph Myers  <joseph@codesourcery.com>
 +
 +	* math/gen-libm-test.pl (%beautify): Add OVERFLOW_EXCEPTION and
 +	OVERFLOW_EXCEPTION_OK.
 +	* math/libm-test.inc ("Philosophy"): Update comment about
 +	exception testing.
 +	(OVERFLOW_EXCEPTION): Define.
 +	(OVERFLOW_EXCEPTION_OK): Likewise.
 +	(INVALID_EXCEPTION_OK): Renumber.
 +	(DIVIDE_BY_ZERO_EXCEPTION_OK): Likewise.
 +	(IGNORE_ZERO_INF_SIGN): Likewise.
 +	(test_exceptions): Handle FE_OVERFLOW.
 +	(exp10_test): Expect overflow exceptions.
 +	(exp2_test): Likewise.
 +	(expm1_test): Likewise.
 +	(nextafter_test): Likewise.
 +	(pow_test): Likewise.
 +	(scalbn_test): Likewise.
 +	(scalbln_test): Likewise.
 +
 +2012-03-19  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/x86_64/bits/atomic.h
 +	(__arch_c_compare_and_exchange_val_64_acq): Use atomic64_t on
 +	64bit integer.
 +	(atomic_exchange_acq): Likewise.
 +	(__arch_exchange_and_add_body): Likewise.
 +	(__arch_add_body): Likewise.
 +	(atomic_add_negative): Likewise.
 +	(atomic_add_zero): Likewise.
 +
 +2012-03-19  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/x86_64/fpu/bits/fenv.h: Don't include <bits/wordsize.h>.
 +	(fenv_t): Check __x86_64__ instead of __WORDSIZE.
 +
 +2012-03-19  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/x86_64/bits/mathdef.h: Don't include <bits/wordsize.h>.
 +	Check __x86_64__ instead of __WORDSIZE.
 +
 +2012-03-19  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed: Support x32.
 +
 +2012-03-19  David S. Miller  <davem@davemloft.net>
 +
 +	* sysdeps/sparc/fpu/libm-test-ulps: Update.
 +
 +	* sysdeps/sparc/fpu/fenv_private.h: New file.
 +	* sysdeps/sparc/fpu/math_private.h: Use it.
 +	(libc_feholdexcept, libc_feholdexceptf, libc_feholdexceptl):
 +	Remove.
 +	(libc_feholdexcept_setround, libc_feholdexcept_setroundf,
 +	(libc_feholdexcept_setroundl): Remove.
 +	(libc_fetestexcept, libc_fetestexceptf, libc_fetestexceptl):
 +	Remove.
 +	(libc_fesetenv, libc_fesetenvf, libc_fesetenvl): Remove.
 +	(libc_feupdateenv, libc_feupdateenvf, libc_feupdateenvf): Remove.
 +
 +2012-03-19  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/x86_64/fpu/math_private.h (EXTRACT_WORDS64): Use
 +	int64_t instead of long int.
 +	(INSERT_WORDS64): Likwise.
 +
 +2012-03-19  H.J. Lu  <hongjiu.lu@intel.com>
 +
 +	* sysdeps/x86_64/jmpbuf-unwind.h (_JMPBUF_CFA_UNWINDS_ADJ): Cast
 +	_Unwind_GetCFA return to _Unwind_Ptr first.
 +
  2012-03-19  Joseph Myers  <joseph@codesourcery.com>
  
  	[BZ #13629]
diff --cc debug/backtracesyms.c
index a010664,d75ce0a..3fabf26
--- a/debug/backtracesyms.c
+++ b/debug/backtracesyms.c
@@@ -1,5 -1,5 +1,5 @@@
  /* Return list with names for address in backtrace.
-    Copyright (C) 1998, 2000 Free Software Foundation, Inc.
 -   Copyright (C) 1998,1999,2000,2001,2003,2009 Free Software Foundation, Inc.
++   Copyright (C) 1998-2012 Free Software Foundation, Inc.
     This file is part of the GNU C Library.
     Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
  
diff --cc debug/backtracesymsfd.c
index 2345853,8b4a836..297e32d
--- a/debug/backtracesymsfd.c
+++ b/debug/backtracesymsfd.c
@@@ -1,5 -1,5 +1,5 @@@
  /* Write formatted list with names for addresses in backtrace to a file.
-    Copyright (C) 1998, 2003, 2005 Free Software Foundation, Inc.
 -   Copyright (C) 1998,2000,2003,2005,2009,2011 Free Software Foundation, Inc.
++   Copyright (C) 1998-2012 Free Software Foundation, Inc.
     This file is part of the GNU C Library.
     Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
  
@@@ -21,8 -21,8 +21,8 @@@
  #include <string.h>
  #include <sys/uio.h>
  
 -#include <stdio-common/_itoa.h>
 +#include <_itoa.h>
- #include <not-cancel.h>
+ #include <ldsodefs.h>
  
  #if __ELF_NATIVE_CLASS == 32
  # define WORD_WIDTH 8
diff --cc sysdeps/i386/configure
index baa6609,49330e3..e60b498
--- a/sysdeps/i386/configure
+++ b/sysdeps/i386/configure
@@@ -348,3 -342,3 +348,47 @@@ f
  fi
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_novzeroupper" >&5
  $as_echo "$libc_cv_cc_novzeroupper" >&6; }
++
++# Check for support of thread-local storage handling in assembler and
++# linker.
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for i386 TLS support" >&5
++$as_echo_n "checking for i386 TLS support... " >&6; }
++if ${libc_cv_386_tls+:} false; then :
++  $as_echo_n "(cached) " >&6
++else
++  cat > conftest.s <<\EOF
++	.section ".tdata", "awT", @progbits
++	.globl foo
++foo:	.long	1
++	.section ".tbss", "awT", @nobits
++	.globl bar
++bar:	.skip	4
++	.text
++baz:	leal	bar@TLSLDM(%ebx), %eax
++	leal	bar@DTPOFF(%eax), %edx
++	subl	foo@GOTTPOFF(%edx), %eax
++	subl	$bar@TPOFF, %eax
++	movl	foo@GOTNTPOFF(%edx), %ecx
++	movl	%gs:(%ecx), %eax
++	movl	%gs:bar@NTPOFF, %eax
++EOF
++if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
++  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
++  test $ac_status = 0; }; }; then
++  libc_cv_386_tls=yes
++else
++  libc_cv_386_tls=no
++fi
++rm -f conftest*
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_386_tls" >&5
++$as_echo "$libc_cv_386_tls" >&6; }
++if test $libc_cv_386_tls = no; then
++  as_fn_error $? "the assembler must support TLS" "$LINENO" 5
++fi
++
++$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
++
diff --cc sysdeps/i386/configure.in
index 7b4879d,ec69080..b9e6f9e
--- a/sysdeps/i386/configure.in
+++ b/sysdeps/i386/configure.in
@@@ -81,7 -92,42 +81,41 @@@ f
  
  dnl Check if -mno-vzeroupper works.
  AC_CACHE_CHECK(for -mno-vzeroupper support, libc_cv_cc_novzeroupper, [dnl
 -if AC_TRY_COMMAND([${CC-cc} -mno-vzeroupper -xc /dev/null -S -o /dev/null]); then
 -  libc_cv_cc_novzeroupper=yes
 -else
 -  libc_cv_cc_novzeroupper=no
 -fi])
 +LIBC_TRY_CC_OPTION([-mno-vzeroupper],
 +		   [libc_cv_cc_novzeroupper=yes],
 +		   [libc_cv_cc_novzeroupper=no])
 +])
+ 
+ # Check for support of thread-local storage handling in assembler and
+ # linker.
+ AC_CACHE_CHECK(for i386 TLS support, libc_cv_386_tls, [dnl
+ cat > conftest.s <<\EOF
+ 	.section ".tdata", "awT", @progbits
+ 	.globl foo
+ foo:	.long	1
+ 	.section ".tbss", "awT", @nobits
+ 	.globl bar
+ bar:	.skip	4
+ 	.text
+ baz:	leal	bar@TLSLDM(%ebx), %eax
+ 	leal	bar@DTPOFF(%eax), %edx
+ 	subl	foo@GOTTPOFF(%edx), %eax
+ 	subl	$bar@TPOFF, %eax
+ 	movl	foo@GOTNTPOFF(%edx), %ecx
+ 	movl	%gs:(%ecx), %eax
+ 	movl	%gs:bar@NTPOFF, %eax
+ EOF
+ dnl
+ if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
+   libc_cv_386_tls=yes
+ else
+   libc_cv_386_tls=no
+ fi
+ rm -f conftest*])
+ if test $libc_cv_386_tls = no; then
+   AC_MSG_ERROR([the assembler must support TLS])
+ fi
+ 
+ dnl It is always possible to access static and hidden symbols in an
+ dnl position independent way.
+ AC_DEFINE(PI_STATIC_AND_HIDDEN)
diff --cc sysdeps/i386/start.S
index 992c358,992c358..990f371
--- a/sysdeps/i386/start.S
+++ b/sysdeps/i386/start.S
@@@ -1,6 -1,6 +1,5 @@@
  /* Startup code compliant to the ELF i386 ABI.
--   Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004
--   Free Software Foundation, Inc.
++   Copyright (C) 1995-2012 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

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=d6373f9ce3972a1891e4d09479a98e0dbc7e3d73

commit d6373f9ce3972a1891e4d09479a98e0dbc7e3d73
Merge: 1d6c3d2 1897ad4
Author: Andreas Jaeger <aj@suse.de>
Date:   Tue Mar 20 20:40:16 2012 +0100

    Merge branch 'master' into elf-move


http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=1d6c3d237d10606121c959b9bd2ae722f79ea899

commit 1d6c3d237d10606121c959b9bd2ae722f79ea899
Author: Andreas Jaeger <aj@suse.de>
Date:   Tue Mar 20 09:32:41 2012 +0100

    Remove old debug/backtracesyms files, replace with elf versions.

diff --git a/debug/backtracesyms.c b/debug/backtracesyms.c
index a010664..d75ce0a 100644
--- a/debug/backtracesyms.c
+++ b/debug/backtracesyms.c
@@ -1,5 +1,5 @@
 /* Return list with names for address in backtrace.
-   Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1998,1999,2000,2001,2003,2009 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -17,13 +17,20 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <assert.h>
 #include <execinfo.h>
+#include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 
+#include <ldsodefs.h>
 
-/* Assume the worst for the width of an address.  */
-#define WORD_WIDTH 16
+#if __ELF_NATIVE_CLASS == 32
+# define WORD_WIDTH 8
+#else
+/* We assyme 64bits.  */
+# define WORD_WIDTH 16
+#endif
 
 
 char **
@@ -31,16 +38,37 @@ __backtrace_symbols (array, size)
      void *const *array;
      int size;
 {
+  Dl_info info[size];
+  int status[size];
   int cnt;
   size_t total = 0;
   char **result;
 
-  /* We can compute the text size needed for the symbols since we print
-     them all as "[+0x<addr>]".  */
-  total = size * (WORD_WIDTH + 6);
+  /* Fill in the information we can get from `dladdr'.  */
+  for (cnt = 0; cnt < size; ++cnt)
+    {
+      struct link_map *map;
+      status[cnt] = _dl_addr (array[cnt], &info[cnt], &map, NULL);
+      if (status[cnt] && info[cnt].dli_fname && info[cnt].dli_fname[0] != '\0')
+	{
+	  /* We have some info, compute the length of the string which will be
+	     "<file-name>(<sym-name>+offset) [address].  */
+	  total += (strlen (info[cnt].dli_fname ?: "")
+		    + strlen (info[cnt].dli_sname ?: "")
+		    + 3 + WORD_WIDTH + 3 + WORD_WIDTH + 5);
+
+	  /* The load bias is more useful to the user than the load
+	     address.  The use of these addresses is to calculate an
+	     address in the ELF file, so its prelinked bias is not
+	     something we want to subtract out.  */
+	  info[cnt].dli_fbase = (void *) map->l_addr;
+	}
+      else
+	total += 5 + WORD_WIDTH;
+    }
 
   /* Allocate memory for the result.  */
-  result = malloc (size * sizeof (char *) + total);
+  result = (char **) malloc (size * sizeof (char *) + total);
   if (result != NULL)
     {
       char *last = (char *) (result + size);
@@ -48,8 +76,45 @@ __backtrace_symbols (array, size)
       for (cnt = 0; cnt < size; ++cnt)
 	{
 	  result[cnt] = last;
-	  last += 1 + sprintf (last, "[+%p]", array[cnt]);
+
+	  if (status[cnt]
+	      && info[cnt].dli_fname != NULL && info[cnt].dli_fname[0] != '\0')
+	    {
+	      if (info[cnt].dli_sname == NULL)
+		/* We found no symbol name to use, so describe it as
+		   relative to the file.  */
+		info[cnt].dli_saddr = info[cnt].dli_fbase;
+
+	      if (info[cnt].dli_sname == NULL && info[cnt].dli_saddr == 0)
+		last += 1 + sprintf (last, "%s(%s) [%p]",
+				     info[cnt].dli_fname ?: "",
+				     info[cnt].dli_sname ?: "",
+				     array[cnt]);
+	      else
+		{
+		  char sign;
+		  ptrdiff_t offset;
+		  if (array[cnt] >= (void *) info[cnt].dli_saddr)
+		    {
+		      sign = '+';
+		      offset = array[cnt] - info[cnt].dli_saddr;
+		    }
+		  else
+		    {
+		      sign = '-';
+		      offset = info[cnt].dli_saddr - array[cnt];
+		    }
+
+		  last += 1 + sprintf (last, "%s(%s%c%#tx) [%p]",
+				       info[cnt].dli_fname ?: "",
+				       info[cnt].dli_sname ?: "",
+				       sign, offset, array[cnt]);
+		}
+	    }
+	  else
+	    last += 1 + sprintf (last, "[%p]", array[cnt]);
 	}
+      assert (last <= (char *) result + size * sizeof (char *) + total);
     }
 
   return result;
diff --git a/debug/backtracesymsfd.c b/debug/backtracesymsfd.c
index fe247d8..8b4a836 100644
--- a/debug/backtracesymsfd.c
+++ b/debug/backtracesymsfd.c
@@ -1,5 +1,5 @@
 /* Write formatted list with names for addresses in backtrace to a file.
-   Copyright (C) 1998, 2003, 2005 Free Software Foundation, Inc.
+   Copyright (C) 1998,2000,2003,2005,2009,2011 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -22,7 +22,7 @@
 #include <sys/uio.h>
 
 #include <stdio-common/_itoa.h>
-#include <not-cancel.h>
+#include <ldsodefs.h>
 
 #if __ELF_NATIVE_CLASS == 32
 # define WORD_WIDTH 8
@@ -38,25 +38,87 @@ __backtrace_symbols_fd (array, size, fd)
      int size;
      int fd;
 {
-  struct iovec iov[3];
+  struct iovec iov[9];
   int cnt;
 
   for (cnt = 0; cnt < size; ++cnt)
     {
       char buf[WORD_WIDTH];
+      char buf2[WORD_WIDTH];
+      Dl_info info;
+      struct link_map *map;
+      size_t last = 0;
 
-      iov[0].iov_base = (void *) "[0x";
-      iov[0].iov_len = 3;
+      if (_dl_addr (array[cnt], &info, &map, NULL)
+	  && info.dli_fname != NULL && info.dli_fname[0] != '\0')
+	{
+	  /* Name of the file.  */
+	  iov[0].iov_base = (void *) info.dli_fname;
+	  iov[0].iov_len = strlen (info.dli_fname);
+	  last = 1;
 
-      iov[1].iov_base = _itoa_word ((unsigned long int) array[cnt],
-				    &buf[WORD_WIDTH], 16, 0);
-      iov[1].iov_len = &buf[WORD_WIDTH] - (char *) iov[1].iov_base;
+	  if (info.dli_sname != NULL || map->l_addr != 0)
+	    {
+	      size_t diff;
 
-      iov[2].iov_base = (void *) "]\n";
-      iov[2].iov_len = 2;
+	      iov[last].iov_base = (void *) "(";
+	      iov[last].iov_len = 1;
+	      ++last;
 
-      /* We prefer to use the non-cancelable interface if it is available.  */
-      writev_not_cancel_no_status (fd, iov, 3);
+	      if (info.dli_sname != NULL)
+		{
+		  /* We have a symbol name.  */
+		  iov[last].iov_base = (void *) info.dli_sname;
+		  iov[last].iov_len = strlen (info.dli_sname);
+		  ++last;
+		}
+	      else
+		/* We have no symbol, so describe it as relative to the file.
+		   The load bias is more useful to the user than the load
+		   address.  The use of these addresses is to calculate an
+		   address in the ELF file, so its prelinked bias is not
+		   something we want to subtract out.  */
+		info.dli_saddr = (void *) map->l_addr;
+
+	      if (array[cnt] >= (void *) info.dli_saddr)
+		{
+		  iov[last].iov_base = (void *) "+0x";
+		  diff = array[cnt] - info.dli_saddr;
+		}
+	      else
+		{
+		  iov[last].iov_base = (void *) "-0x";
+		  diff = info.dli_saddr - array[cnt];
+		}
+	      iov[last].iov_len = 3;
+	      ++last;
+
+	      iov[last].iov_base = _itoa_word ((unsigned long int) diff,
+					       &buf2[WORD_WIDTH], 16, 0);
+	      iov[last].iov_len = (&buf2[WORD_WIDTH]
+				   - (char *) iov[last].iov_base);
+	      ++last;
+
+	      iov[last].iov_base = (void *) ")";
+	      iov[last].iov_len = 1;
+	      ++last;
+	    }
+	}
+
+      iov[last].iov_base = (void *) "[0x";
+      iov[last].iov_len = 3;
+      ++last;
+
+      iov[last].iov_base = _itoa_word ((unsigned long int) array[cnt],
+				       &buf[WORD_WIDTH], 16, 0);
+      iov[last].iov_len = &buf[WORD_WIDTH] - (char *) iov[last].iov_base;
+      ++last;
+
+      iov[last].iov_base = (void *) "]\n";
+      iov[last].iov_len = 2;
+      ++last;
+
+      __writev (fd, iov, last);
     }
 }
 weak_alias (__backtrace_symbols_fd, backtrace_symbols_fd)
diff --git a/sysdeps/generic/backtracesyms.c b/sysdeps/generic/backtracesyms.c
deleted file mode 100644
index d75ce0a..0000000
--- a/sysdeps/generic/backtracesyms.c
+++ /dev/null
@@ -1,122 +0,0 @@
-/* Return list with names for address in backtrace.
-   Copyright (C) 1998,1999,2000,2001,2003,2009 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <assert.h>
-#include <execinfo.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include <ldsodefs.h>
-
-#if __ELF_NATIVE_CLASS == 32
-# define WORD_WIDTH 8
-#else
-/* We assyme 64bits.  */
-# define WORD_WIDTH 16
-#endif
-
-
-char **
-__backtrace_symbols (array, size)
-     void *const *array;
-     int size;
-{
-  Dl_info info[size];
-  int status[size];
-  int cnt;
-  size_t total = 0;
-  char **result;
-
-  /* Fill in the information we can get from `dladdr'.  */
-  for (cnt = 0; cnt < size; ++cnt)
-    {
-      struct link_map *map;
-      status[cnt] = _dl_addr (array[cnt], &info[cnt], &map, NULL);
-      if (status[cnt] && info[cnt].dli_fname && info[cnt].dli_fname[0] != '\0')
-	{
-	  /* We have some info, compute the length of the string which will be
-	     "<file-name>(<sym-name>+offset) [address].  */
-	  total += (strlen (info[cnt].dli_fname ?: "")
-		    + strlen (info[cnt].dli_sname ?: "")
-		    + 3 + WORD_WIDTH + 3 + WORD_WIDTH + 5);
-
-	  /* The load bias is more useful to the user than the load
-	     address.  The use of these addresses is to calculate an
-	     address in the ELF file, so its prelinked bias is not
-	     something we want to subtract out.  */
-	  info[cnt].dli_fbase = (void *) map->l_addr;
-	}
-      else
-	total += 5 + WORD_WIDTH;
-    }
-
-  /* Allocate memory for the result.  */
-  result = (char **) malloc (size * sizeof (char *) + total);
-  if (result != NULL)
-    {
-      char *last = (char *) (result + size);
-
-      for (cnt = 0; cnt < size; ++cnt)
-	{
-	  result[cnt] = last;
-
-	  if (status[cnt]
-	      && info[cnt].dli_fname != NULL && info[cnt].dli_fname[0] != '\0')
-	    {
-	      if (info[cnt].dli_sname == NULL)
-		/* We found no symbol name to use, so describe it as
-		   relative to the file.  */
-		info[cnt].dli_saddr = info[cnt].dli_fbase;
-
-	      if (info[cnt].dli_sname == NULL && info[cnt].dli_saddr == 0)
-		last += 1 + sprintf (last, "%s(%s) [%p]",
-				     info[cnt].dli_fname ?: "",
-				     info[cnt].dli_sname ?: "",
-				     array[cnt]);
-	      else
-		{
-		  char sign;
-		  ptrdiff_t offset;
-		  if (array[cnt] >= (void *) info[cnt].dli_saddr)
-		    {
-		      sign = '+';
-		      offset = array[cnt] - info[cnt].dli_saddr;
-		    }
-		  else
-		    {
-		      sign = '-';
-		      offset = info[cnt].dli_saddr - array[cnt];
-		    }
-
-		  last += 1 + sprintf (last, "%s(%s%c%#tx) [%p]",
-				       info[cnt].dli_fname ?: "",
-				       info[cnt].dli_sname ?: "",
-				       sign, offset, array[cnt]);
-		}
-	    }
-	  else
-	    last += 1 + sprintf (last, "[%p]", array[cnt]);
-	}
-      assert (last <= (char *) result + size * sizeof (char *) + total);
-    }
-
-  return result;
-}
-weak_alias (__backtrace_symbols, backtrace_symbols)
diff --git a/sysdeps/generic/backtracesymsfd.c b/sysdeps/generic/backtracesymsfd.c
deleted file mode 100644
index 8b4a836..0000000
--- a/sysdeps/generic/backtracesymsfd.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Write formatted list with names for addresses in backtrace to a file.
-   Copyright (C) 1998,2000,2003,2005,2009,2011 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <execinfo.h>
-#include <string.h>
-#include <sys/uio.h>
-
-#include <stdio-common/_itoa.h>
-#include <ldsodefs.h>
-
-#if __ELF_NATIVE_CLASS == 32
-# define WORD_WIDTH 8
-#else
-/* We assume 64bits.  */
-# define WORD_WIDTH 16
-#endif
-
-
-void
-__backtrace_symbols_fd (array, size, fd)
-     void *const *array;
-     int size;
-     int fd;
-{
-  struct iovec iov[9];
-  int cnt;
-
-  for (cnt = 0; cnt < size; ++cnt)
-    {
-      char buf[WORD_WIDTH];
-      char buf2[WORD_WIDTH];
-      Dl_info info;
-      struct link_map *map;
-      size_t last = 0;
-
-      if (_dl_addr (array[cnt], &info, &map, NULL)
-	  && info.dli_fname != NULL && info.dli_fname[0] != '\0')
-	{
-	  /* Name of the file.  */
-	  iov[0].iov_base = (void *) info.dli_fname;
-	  iov[0].iov_len = strlen (info.dli_fname);
-	  last = 1;
-
-	  if (info.dli_sname != NULL || map->l_addr != 0)
-	    {
-	      size_t diff;
-
-	      iov[last].iov_base = (void *) "(";
-	      iov[last].iov_len = 1;
-	      ++last;
-
-	      if (info.dli_sname != NULL)
-		{
-		  /* We have a symbol name.  */
-		  iov[last].iov_base = (void *) info.dli_sname;
-		  iov[last].iov_len = strlen (info.dli_sname);
-		  ++last;
-		}
-	      else
-		/* We have no symbol, so describe it as relative to the file.
-		   The load bias is more useful to the user than the load
-		   address.  The use of these addresses is to calculate an
-		   address in the ELF file, so its prelinked bias is not
-		   something we want to subtract out.  */
-		info.dli_saddr = (void *) map->l_addr;
-
-	      if (array[cnt] >= (void *) info.dli_saddr)
-		{
-		  iov[last].iov_base = (void *) "+0x";
-		  diff = array[cnt] - info.dli_saddr;
-		}
-	      else
-		{
-		  iov[last].iov_base = (void *) "-0x";
-		  diff = info.dli_saddr - array[cnt];
-		}
-	      iov[last].iov_len = 3;
-	      ++last;
-
-	      iov[last].iov_base = _itoa_word ((unsigned long int) diff,
-					       &buf2[WORD_WIDTH], 16, 0);
-	      iov[last].iov_len = (&buf2[WORD_WIDTH]
-				   - (char *) iov[last].iov_base);
-	      ++last;
-
-	      iov[last].iov_base = (void *) ")";
-	      iov[last].iov_len = 1;
-	      ++last;
-	    }
-	}
-
-      iov[last].iov_base = (void *) "[0x";
-      iov[last].iov_len = 3;
-      ++last;
-
-      iov[last].iov_base = _itoa_word ((unsigned long int) array[cnt],
-				       &buf[WORD_WIDTH], 16, 0);
-      iov[last].iov_len = &buf[WORD_WIDTH] - (char *) iov[last].iov_base;
-      ++last;
-
-      iov[last].iov_base = (void *) "]\n";
-      iov[last].iov_len = 2;
-      ++last;
-
-      __writev (fd, iov, last);
-    }
-}
-weak_alias (__backtrace_symbols_fd, backtrace_symbols_fd)
-libc_hidden_def (__backtrace_symbols_fd)

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=ff962fb6a10c46052535d482c889b3a9e5236637

commit ff962fb6a10c46052535d482c889b3a9e5236637
Author: Andreas Jaeger <aj@suse.de>
Date:   Tue Mar 20 09:14:04 2012 +0100

    Remove unused start.c files.

diff --git a/sysdeps/unix/i386/start.c b/sysdeps/unix/i386/start.c
deleted file mode 100644
index e6c89ee..0000000
--- a/sysdeps/unix/i386/start.c
+++ /dev/null
@@ -1,2 +0,0 @@
-#define	DUMMIES	dummy0
-#include <sysdeps/unix/start.c>
diff --git a/sysdeps/unix/sparc/start.c b/sysdeps/unix/sparc/start.c
deleted file mode 100644
index 86fb8bb..0000000
--- a/sysdeps/unix/sparc/start.c
+++ /dev/null
@@ -1,186 +0,0 @@
-/* Copyright (C) 1991-1997,2004,2012 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
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   In addition to the permissions in the GNU Lesser General Public
-   License, the Free Software Foundation gives you unlimited
-   permission to link the compiled version of this file with other
-   programs, and to distribute those programs without any restriction
-   coming from the use of this file. (The GNU Lesser General Public
-   License restrictions do apply in other respects; for example, they
-   cover modification of the file, and distribution when not linked
-   into another program.)
-
-   Note that people who make modified versions of this file are not
-   obligated to grant this special exception for their modified
-   versions; it is their choice whether to do so. The GNU Lesser
-   General Public License gives permission to release a modified
-   version without this exception; this exception also makes it
-   possible to release a modified version which carries forward this
-   exception.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <errno.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <fcntl.h>
-
-#ifndef NO_SHLIB
-#include <sys/exec.h>
-#include <sys/types.h>
-#include <sys/mman.h>
-#include <link.h>
-#include <syscall.h>
-#endif
-
-#if !defined (__GNUC__) || __GNUC__ < 2
-  #error This file uses GNU C extensions; you must compile with GCC version 2.
-#endif
-
-/* The first piece of initialized data.  */
-int __data_start = 0;
-weak_alias (__data_start, data_start)
-
-extern void __libc_init (int argc, char **argv, char **envp) __THROW;
-extern int main (int argc, char **argv, char **envp) __THROW;
-
-register long int sp asm("%sp"), fp asm("%fp");
-
-#ifndef NO_SHLIB
-static void init_shlib (void) __THROW;
-#endif
-
-#ifndef NO_EXPLICIT_START
-/* Declare _start with an explicit assembly symbol name of `start'
-   (note no leading underscore).  This is the name Sun's crt0.o uses,
-   and programs are often linked with `ld -e start'.  */
-void _start (void) asm ("start");
-#endif
-
-void
-_start (void)
-{
-  /* It is important that these be declared `register'.
-     Otherwise, when compiled without optimization, they are put on the
-     stack, which loses completely after we zero the FP.  */
-  register int argc;
-  register char **argv, **envp;
-
-  /* Unwind the frame built when we entered the function.  */
-  asm("restore");
-
-  /* And clear the frame pointer.  */
-  fp = 0;
-
-  /* The argument info starts after one register
-     window (64 bytes) past the SP.  */
-  argc = ((int *) sp)[16];
-  argv = (char **) &((int *) sp)[17];
-  envp = &argv[argc + 1];
-  __environ = envp;
-
-#ifndef NO_SHLIB
-  init_shlib ();
-#endif
-
-  /* Allocate 24 bytes of stack space for the register save area.  */
-  sp -= 24;
-  __libc_init (argc, argv, envp);
-
-  exit (main (argc, argv, envp));
-}
-
-#ifndef NO_SHLIB
-
-/* System calls for use by the bootstrap routine.
-   These are defined here since the usual calls may be dynamically linked.  */
-
-int syscall (int sysno, ...) asm ("init_syscall");
-asm ("init_syscall:\n"
-     "	clr %g1\n"
-     "	ta 0\n"
-     "	bcc 1f\n"
-     "	sethi %hi(_errno), %g1\n"
-     "	st %o0, [%g1 + %lo(_errno)]\n"
-     "	sub %g0, 1, %o0\n"
-     "1:retl\n"
-     "	nop");
-
-static void
-init_shlib ()
-{
-  extern struct link_dynamic _DYNAMIC;
-  int so, zf;
-  caddr_t somap;
-  caddr_t sodmap;
-  caddr_t sobssmap;
-  void (*ldstart) (int, int);
-  struct exec soexec;
-  struct
-    {
-      caddr_t crt_ba;
-      int crt_dzfd;
-      int crt_ldfd;
-      struct link_dynamic *crt_dp;
-      char **crt_ep;
-      caddr_t crt_bp;
-    } soarg;
-
-  /* If not dynamically linked, do nothing.  */
-  if (&_DYNAMIC == 0)
-    return;
-
-  /* Map in the dynamic linker.  */
-  so = syscall (SYS_open, "/usr/lib/ld.so", O_RDONLY);
-  if (syscall (SYS_read, so, &soexec, sizeof (soexec)) != sizeof (soexec)
-      || soexec.a_magic != ZMAGIC)
-    {
-      static const char emsg[] = "crt0: no /usr/lib/ld.so\n";
-
-      syscall (SYS_write, 2, emsg, sizeof (emsg) - 1);
-      syscall (SYS_exit, 127);
-    }
-  somap = (caddr_t) syscall (SYS_mmap, 0,
-			     soexec.a_text + soexec.a_data + soexec.a_bss,
-			     PROT_READ | PROT_EXEC, _MAP_NEW | MAP_PRIVATE,
-			     so, 0);
-  sodmap = (caddr_t) syscall (SYS_mmap, somap + soexec.a_text, soexec.a_data,
-			      PROT_READ | PROT_WRITE | PROT_EXEC,
-			      _MAP_NEW | MAP_FIXED | MAP_PRIVATE,
-			      so, soexec.a_text);
-  zf = syscall (SYS_open, "/dev/zero", O_RDONLY);
-  if (soexec.a_bss != 0)
-    sobssmap = (caddr_t) syscall (SYS_mmap,
-				  somap + soexec.a_text + soexec.a_data,
-				  soexec.a_bss,
-				  PROT_READ | PROT_WRITE | PROT_EXEC,
-				  _MAP_NEW | MAP_FIXED | MAP_PRIVATE,
-				  zf, 0);
-
-  /* Call the entry point of the dynamic linker.  */
-  soarg.crt_ba = somap;
-  soarg.crt_dzfd = zf;
-  soarg.crt_ldfd = so;
-  soarg.crt_dp = &_DYNAMIC;
-  soarg.crt_ep = __environ;
-  soarg.crt_bp = (caddr_t) &&retaddr;
-
-  ldstart = (__typeof (ldstart)) (somap + soexec.a_entry);
-  (*ldstart) (1, (char *) &soarg - (char *) sp);
-
- retaddr:
-}
-
-#endif
diff --git a/sysdeps/unix/start.c b/sysdeps/unix/start.c
deleted file mode 100644
index ecedc55..0000000
--- a/sysdeps/unix/start.c
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Copyright (C) 1991, 93, 1995-1998, 2000, 2012 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
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   In addition to the permissions in the GNU Lesser General Public
-   License, the Free Software Foundation gives you unlimited
-   permission to link the compiled version of this file with other
-   programs, and to distribute those programs without any restriction
-   coming from the use of this file. (The GNU Lesser General Public
-   License restrictions do apply in other respects; for example, they
-   cover modification of the file, and distribution when not linked
-   into another program.)
-
-   Note that people who make modified versions of this file are not
-   obligated to grant this special exception for their modified
-   versions; it is their choice whether to do so. The GNU Lesser
-   General Public License gives permission to release a modified
-   version without this exception; this exception also makes it
-   possible to release a modified version which carries forward this
-   exception.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <errno.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <sysdep.h>		/* In case it wants to define anything.  */
-
-/* The first piece of initialized data.  */
-int __data_start = 0;
-weak_alias (__data_start, data_start)
-
-#ifdef	DUMMIES
-#define	ARG_DUMMIES	DUMMIES,
-#define	DECL_DUMMIES	int DUMMIES;
-#else
-#define	ARG_DUMMIES
-#define	DECL_DUMMIES
-#endif
-
-extern void __libc_init (int argc, char **argv, char **envp);
-extern int main (int argc, char **argv, char **envp);
-
-
-/* Not a prototype because it gets called strangely.  */
-static void start1();
-
-#ifndef	HAVE__start
-
-/* N.B.: It is important that this be the first function.
-   This file is the first thing in the text section.  */
-void
-_start ()
-{
-  start1 ();
-}
-
-#endif
-
-/* ARGSUSED */
-static void
-start1 (ARG_DUMMIES argc, argp)
-     DECL_DUMMIES
-     int argc;
-     char *argp;
-{
-  char **argv = &argp;
-
-  /* The environment starts just after ARGV.  */
-  __environ = &argv[argc + 1];
-
-  /* If the first thing after ARGV is the arguments
-     themselves, there is no environment.  */
-  if ((char *) __environ == *argv)
-    /* The environment is empty.  Make __environ
-       point at ARGV[ARGC], which is NULL.  */
-    --__environ;
-
-  /* Do C library initializations.  */
-  __libc_init (argc, argv, __environ);
-
-  /* Call the user program.  */
-  exit (main (argc, argv, __environ));
-}

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=6870c2ed1f2d4ff53e7c36b252f9f2c6b6112552

commit 6870c2ed1f2d4ff53e7c36b252f9f2c6b6112552
Author: Andreas Jaeger <aj@suse.de>
Date:   Mon Mar 19 21:09:50 2012 +0100

    Fix last line in configure.in.

diff --git a/sysdeps/x86_64/configure.in b/sysdeps/x86_64/configure.in
index 5874c9a..f913c7c 100644
--- a/sysdeps/x86_64/configure.in
+++ b/sysdeps/x86_64/configure.in
@@ -119,4 +119,4 @@ fi
 dnl It is always possible to access static and hidden symbols in an
 dnl position independent way.
 AC_DEFINE(PI_STATIC_AND_HIDDEN)
-# work around problem with autoconf and empty lines at the end of files
\ No newline at end of file
+# work around problem with autoconf and empty lines at the end of files

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=8f599ddb6750b13c1283a877c0719748af181206

commit 8f599ddb6750b13c1283a877c0719748af181206
Author: Andreas Jaeger <aj@suse.de>
Date:   Mon Mar 19 21:06:14 2012 +0100

    Fix last line.

diff --git a/sysdeps/x86_64/configure b/sysdeps/x86_64/configure
index bd699bb..8b1a4de 100644
--- a/sysdeps/x86_64/configure
+++ b/sysdeps/x86_64/configure
@@ -1,3 +1,366 @@
-# The i386 fragment also works for x86_64.
 
-. $srcdir/sysdeps/i386/configure
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+  return $1
+} # as_fn_set_status
+
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+  set +e
+  as_fn_set_status $1
+  exit $1
+} # as_fn_exit
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+   test "X`expr 00001 : '.*\(...\)'`" = X001; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+  as_basename=basename
+else
+  as_basename=false
+fi
+
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+	 X"$0" : 'X\(//\)$' \| \
+	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\/\(\/\/\)$/{
+	    s//\1/
+	    q
+	  }
+	  /^X\/\(\/\).*/{
+	    s//\1/
+	    q
+	  }
+	  s/.*/./; q'`
+
+
+  as_lineno_1=$LINENO as_lineno_1a=$LINENO
+  as_lineno_2=$LINENO as_lineno_2a=$LINENO
+  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
+  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
+  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
+  sed -n '
+    p
+    /[$]LINENO/=
+  ' <$as_myself |
+    sed '
+      s/[$]LINENO.*/&-/
+      t lineno
+      b
+      :lineno
+      N
+      :loop
+      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
+      t loop
+      s/-\n.*//
+    ' >$as_me.lineno &&
+  chmod +x "$as_me.lineno" ||
+    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+
+  # Don't try to exec as it changes $[0], causing all sort of problems
+  # (the dirname of $[0] is not the place where we might find the
+  # original and so on.  Autoconf is especially sensitive to this).
+  . "./$as_me.lineno"
+  # Exit status is that of the last command.
+  exit
+}
+
+
+# ac_fn_c_try_compile LINENO
+# --------------------------
+# Try to compile conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_compile ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  rm -f conftest.$ac_objext
+  if { { ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_compile") 2>conftest.err
+  ac_status=$?
+  if test -s conftest.err; then
+    grep -v '^ *+' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+    mv -f conftest.er1 conftest.err
+  fi
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_retval=1
+fi
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_compile
+
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$3=yes"
+else
+  eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_compile
+# This file is generated from configure.in by Autoconf.  DO NOT EDIT!
+ # Local configure fragment for sysdeps/x86_64.
+
+
+ac_fn_c_check_header_compile "$LINENO" "cpuid.h" "ac_cv_header_cpuid_h" "/* No default includes.  */
+"
+if test "x$ac_cv_header_cpuid_h" = xyes; then :
+
+else
+  as_fn_error $? "gcc must provide the <cpuid.h> header" "$LINENO" 5
+fi
+
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if -g produces usable source locations for assembler-with-cpp" >&5
+$as_echo_n "checking if -g produces usable source locations for assembler-with-cpp... " >&6; }
+if ${libc_cv_cpp_asm_debuginfo+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat > conftest.S <<EOF
+#include "confdefs.h"
+
+/* comment on
+   two lines */
+	${libc_cv_dot_text}
+	${libc_cv_asm_global_directive} foo
+foo:
+	/* Unfortunately this test only works for a real instruction,
+	   not for any of the machine-independent pseudo-ops.
+	   So we just have to assume everybody has a "nop".  */
+	nop
+	/* comment */
+	nop
+	/* comment */
+	nop
+EOF
+if { ac_try='${CC-cc} $CPPFLAGS $ASFLAGS -g -c conftest.S 1>&5'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; } && {
+   ac_pattern='conftest\.S'
+   { ac_try='readelf --debug-dump=line conftest.o |
+		   grep $ac_pattern 1>&5'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }
+  }; then
+  libc_cv_cpp_asm_debuginfo=yes
+else
+  libc_cv_cpp_asm_debuginfo=no
+fi
+rm -f conftest*
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cpp_asm_debuginfo" >&5
+$as_echo "$libc_cv_cpp_asm_debuginfo" >&6; }
+if test $libc_cv_cpp_asm_debuginfo = yes; then
+  $as_echo "#define HAVE_CPP_ASM_DEBUGINFO 1" >>confdefs.h
+
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSE4 support" >&5
+$as_echo_n "checking for SSE4 support... " >&6; }
+if ${libc_cv_cc_sse4+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if { ac_try='${CC-cc} -msse4 -xc /dev/null -S -o /dev/null'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then
+  libc_cv_cc_sse4=yes
+else
+  libc_cv_cc_sse4=no
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_sse4" >&5
+$as_echo "$libc_cv_cc_sse4" >&6; }
+if test $libc_cv_cc_sse4 = yes; then
+  $as_echo "#define HAVE_SSE4_SUPPORT 1" >>confdefs.h
+
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for AVX support" >&5
+$as_echo_n "checking for AVX support... " >&6; }
+if ${libc_cv_cc_avx+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if { ac_try='${CC-cc} -mavx -xc /dev/null -S -o /dev/null'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then
+  libc_cv_cc_avx=yes
+else
+  libc_cv_cc_avx=no
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_avx" >&5
+$as_echo "$libc_cv_cc_avx" >&6; }
+if test $libc_cv_cc_avx = yes; then
+  $as_echo "#define HAVE_AVX_SUPPORT 1" >>confdefs.h
+
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for AVX encoding of SSE instructions" >&5
+$as_echo_n "checking for AVX encoding of SSE instructions... " >&6; }
+if ${libc_cv_cc_sse2avx+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if { ac_try='${CC-cc} -msse2avx -xc /dev/null -S -o /dev/null'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then
+  libc_cv_cc_sse2avx=yes
+else
+  libc_cv_cc_sse2avx=no
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_sse2avx" >&5
+$as_echo "$libc_cv_cc_sse2avx" >&6; }
+if test $libc_cv_cc_sse2avx = yes; then
+  $as_echo "#define HAVE_SSE2AVX_SUPPORT 1" >>confdefs.h
+
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FMA4 support" >&5
+$as_echo_n "checking for FMA4 support... " >&6; }
+if ${libc_cv_cc_fma4+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if { ac_try='${CC-cc} -mfma4 -xc /dev/null -S -o /dev/null'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then
+  libc_cv_cc_fma4=yes
+else
+  libc_cv_cc_fma4=no
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_fma4" >&5
+$as_echo "$libc_cv_cc_fma4" >&6; }
+if test $libc_cv_cc_fma4 = yes; then
+  $as_echo "#define HAVE_FMA4_SUPPORT 1" >>confdefs.h
+
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -mno-vzeroupper support" >&5
+$as_echo_n "checking for -mno-vzeroupper support... " >&6; }
+if ${libc_cv_cc_novzeroupper+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if { ac_try='${CC-cc} -mno-vzeroupper -xc /dev/null -S -o /dev/null'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then
+  libc_cv_cc_novzeroupper=yes
+else
+  libc_cv_cc_novzeroupper=no
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_novzeroupper" >&5
+$as_echo "$libc_cv_cc_novzeroupper" >&6; }
+
+# Check for support of thread-local storage handling in assembler and linker.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86-64 TLS support" >&5
+$as_echo_n "checking for x86-64 TLS support... " >&6; }
+if ${libc_cv_x86_64_tls+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat > conftest.s <<\EOF
+	.section ".tdata", "awT", @progbits
+	.globl foo
+foo:	.quad	1
+	.section ".tbss", "awT", @nobits
+	.globl bar
+bar:	.skip	8
+	.text
+baz:	leaq	bar@TLSLD(%rip), %rdi
+	leaq	bar@DTPOFF(%rax), %rcx
+	addq	foo@GOTTPOFF(%rip), %rax
+	movq	$bar@TPOFF, %rdx
+EOF
+if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then
+  libc_cv_x86_64_tls=yes
+else
+  libc_cv_x86_64_tls=no
+fi
+rm -f conftest*
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_x86_64_tls" >&5
+$as_echo "$libc_cv_x86_64_tls" >&6; }
+if test $libc_cv_x86_64_tls = no; then
+  as_fn_error $? "the assembler must support TLS" "$LINENO" 5
+fi
+
+$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
+
+# work around problem with autoconf and empty lines at the end of files

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=c93ba106176a8b03a5c25f7d6fbb50524a9530cf

commit c93ba106176a8b03a5c25f7d6fbb50524a9530cf
Author: Andreas Jaeger <aj@suse.de>
Date:   Mon Mar 19 21:04:21 2012 +0100

    Move sysdeps/generic/elf/* to sysdeps/generic

diff --git a/sysdeps/generic/elf/backtracesyms.c b/sysdeps/generic/backtracesyms.c
similarity index 100%
rename from sysdeps/generic/elf/backtracesyms.c
rename to sysdeps/generic/backtracesyms.c
diff --git a/sysdeps/generic/elf/backtracesymsfd.c b/sysdeps/generic/backtracesymsfd.c
similarity index 100%
rename from sysdeps/generic/elf/backtracesymsfd.c
rename to sysdeps/generic/backtracesymsfd.c
diff --git a/sysdeps/generic/elf/ifunc-sel.h b/sysdeps/generic/ifunc-sel.h
similarity index 100%
rename from sysdeps/generic/elf/ifunc-sel.h
rename to sysdeps/generic/ifunc-sel.h

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=735095ae9566b2b14e8210e5ed44b3d5b51495f1

commit 735095ae9566b2b14e8210e5ed44b3d5b51495f1
Author: Andreas Jaeger <aj@suse.de>
Date:   Mon Mar 19 21:00:15 2012 +0100

    Merge sysdeps/i386/elf/Versions into sysdeps/i386/Versions.
    Move sysdeps/i386/elf/start.S to sysdeps/i386/
    Merge sysdeps/i386/elf/configure.in into sysdeps/i386/configure.in
    Delete merged files sysdeps/i386/elf/configure.in, sysdeps/i386/elf/Versions
    and sysdeps/i386/elf/configure.

diff --git a/sysdeps/i386/Versions b/sysdeps/i386/Versions
index b0230d3..7be44aa 100644
--- a/sysdeps/i386/Versions
+++ b/sysdeps/i386/Versions
@@ -1,3 +1,9 @@
+ld {
+  GLIBC_2.3 {
+    # The alternative i386 runtime interface to TLS.
+    ___tls_get_addr;
+  }
+}
 libc {
   GLIBC_2.0 {
     # Functions from libgcc.
diff --git a/sysdeps/i386/configure.in b/sysdeps/i386/configure.in
index f769019..ec69080 100644
--- a/sysdeps/i386/configure.in
+++ b/sysdeps/i386/configure.in
@@ -97,3 +97,37 @@ if AC_TRY_COMMAND([${CC-cc} -mno-vzeroupper -xc /dev/null -S -o /dev/null]); the
 else
   libc_cv_cc_novzeroupper=no
 fi])
+
+# Check for support of thread-local storage handling in assembler and
+# linker.
+AC_CACHE_CHECK(for i386 TLS support, libc_cv_386_tls, [dnl
+cat > conftest.s <<\EOF
+	.section ".tdata", "awT", @progbits
+	.globl foo
+foo:	.long	1
+	.section ".tbss", "awT", @nobits
+	.globl bar
+bar:	.skip	4
+	.text
+baz:	leal	bar@TLSLDM(%ebx), %eax
+	leal	bar@DTPOFF(%eax), %edx
+	subl	foo@GOTTPOFF(%edx), %eax
+	subl	$bar@TPOFF, %eax
+	movl	foo@GOTNTPOFF(%edx), %ecx
+	movl	%gs:(%ecx), %eax
+	movl	%gs:bar@NTPOFF, %eax
+EOF
+dnl
+if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
+  libc_cv_386_tls=yes
+else
+  libc_cv_386_tls=no
+fi
+rm -f conftest*])
+if test $libc_cv_386_tls = no; then
+  AC_MSG_ERROR([the assembler must support TLS])
+fi
+
+dnl It is always possible to access static and hidden symbols in an
+dnl position independent way.
+AC_DEFINE(PI_STATIC_AND_HIDDEN)
diff --git a/sysdeps/i386/elf/Versions b/sysdeps/i386/elf/Versions
deleted file mode 100644
index 5ca6686..0000000
--- a/sysdeps/i386/elf/Versions
+++ /dev/null
@@ -1,6 +0,0 @@
-ld {
-  GLIBC_2.3 {
-    # The alternative i386 runtime interface to TLS.
-    ___tls_get_addr;
-  }
-}
diff --git a/sysdeps/i386/elf/configure b/sysdeps/i386/elf/configure
deleted file mode 100644
index 83e89bd..0000000
--- a/sysdeps/i386/elf/configure
+++ /dev/null
@@ -1,128 +0,0 @@
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
-  return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
-  set +e
-  as_fn_set_status $1
-  exit $1
-} # as_fn_exit
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-	 X"$0" : 'X\(//\)$' \| \
-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-
-
-  as_lineno_1=$LINENO as_lineno_1a=$LINENO
-  as_lineno_2=$LINENO as_lineno_2a=$LINENO
-  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
-  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
-  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-# This file is generated from configure.in by Autoconf.  DO NOT EDIT!
- # Local configure fragment for sysdeps/i386/elf.
-
-# Check for support of thread-local storage handling in assembler and
-# linker.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for i386 TLS support" >&5
-$as_echo_n "checking for i386 TLS support... " >&6; }
-if ${libc_cv_386_tls+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat > conftest.s <<\EOF
-	.section ".tdata", "awT", @progbits
-	.globl foo
-foo:	.long	1
-	.section ".tbss", "awT", @nobits
-	.globl bar
-bar:	.skip	4
-	.text
-baz:	leal	bar@TLSLDM(%ebx), %eax
-	leal	bar@DTPOFF(%eax), %edx
-	subl	foo@GOTTPOFF(%edx), %eax
-	subl	$bar@TPOFF, %eax
-	movl	foo@GOTNTPOFF(%edx), %ecx
-	movl	%gs:(%ecx), %eax
-	movl	%gs:bar@NTPOFF, %eax
-EOF
-if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
-  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
-  (eval $ac_try) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then
-  libc_cv_386_tls=yes
-else
-  libc_cv_386_tls=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_386_tls" >&5
-$as_echo "$libc_cv_386_tls" >&6; }
-if test $libc_cv_386_tls = no; then
-  as_fn_error $? "the assembler must support TLS" "$LINENO" 5
-fi
-
-$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
-
diff --git a/sysdeps/i386/elf/configure.in b/sysdeps/i386/elf/configure.in
deleted file mode 100644
index 0c436f3..0000000
--- a/sysdeps/i386/elf/configure.in
+++ /dev/null
@@ -1,36 +0,0 @@
-GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
-# Local configure fragment for sysdeps/i386/elf.
-
-# Check for support of thread-local storage handling in assembler and
-# linker.
-AC_CACHE_CHECK(for i386 TLS support, libc_cv_386_tls, [dnl
-cat > conftest.s <<\EOF
-	.section ".tdata", "awT", @progbits
-	.globl foo
-foo:	.long	1
-	.section ".tbss", "awT", @nobits
-	.globl bar
-bar:	.skip	4
-	.text
-baz:	leal	bar@TLSLDM(%ebx), %eax
-	leal	bar@DTPOFF(%eax), %edx
-	subl	foo@GOTTPOFF(%edx), %eax
-	subl	$bar@TPOFF, %eax
-	movl	foo@GOTNTPOFF(%edx), %ecx
-	movl	%gs:(%ecx), %eax
-	movl	%gs:bar@NTPOFF, %eax
-EOF
-dnl
-if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
-  libc_cv_386_tls=yes
-else
-  libc_cv_386_tls=no
-fi
-rm -f conftest*])
-if test $libc_cv_386_tls = no; then
-  AC_MSG_ERROR([the assembler must support TLS])
-fi
-
-dnl It is always possible to access static and hidden symbols in an
-dnl position independent way.
-AC_DEFINE(PI_STATIC_AND_HIDDEN)
diff --git a/sysdeps/i386/elf/start.S b/sysdeps/i386/start.S
similarity index 100%
rename from sysdeps/i386/elf/start.S
rename to sysdeps/i386/start.S

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=1221efbda91179b78dfb469ab03be063daaf8cd0

commit 1221efbda91179b78dfb469ab03be063daaf8cd0
Author: Andreas Jaeger <aj@suse.de>
Date:   Mon Mar 19 20:58:43 2012 +0100

    Remove now obsolete elf/configure file.

diff --git a/sysdeps/x86_64/elf/configure b/sysdeps/x86_64/elf/configure
deleted file mode 100644
index 7f2b313..0000000
--- a/sysdeps/x86_64/elf/configure
+++ /dev/null
@@ -1,125 +0,0 @@
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
-  return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
-  set +e
-  as_fn_set_status $1
-  exit $1
-} # as_fn_exit
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-	 X"$0" : 'X\(//\)$' \| \
-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-
-
-  as_lineno_1=$LINENO as_lineno_1a=$LINENO
-  as_lineno_2=$LINENO as_lineno_2a=$LINENO
-  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
-  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
-  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-# This file is generated from configure.in by Autoconf.  DO NOT EDIT!
- # Local configure fragment for sysdeps/x86_64/elf.
-
-# Check for support of thread-local storage handling in assembler and linker.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86-64 TLS support" >&5
-$as_echo_n "checking for x86-64 TLS support... " >&6; }
-if ${libc_cv_x86_64_tls+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat > conftest.s <<\EOF
-	.section ".tdata", "awT", @progbits
-	.globl foo
-foo:	.quad	1
-	.section ".tbss", "awT", @nobits
-	.globl bar
-bar:	.skip	8
-	.text
-baz:	leaq	bar@TLSLD(%rip), %rdi
-	leaq	bar@DTPOFF(%rax), %rcx
-	addq	foo@GOTTPOFF(%rip), %rax
-	movq	$bar@TPOFF, %rdx
-EOF
-if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
-  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
-  (eval $ac_try) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then
-  libc_cv_x86_64_tls=yes
-else
-  libc_cv_x86_64_tls=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_x86_64_tls" >&5
-$as_echo "$libc_cv_x86_64_tls" >&6; }
-if test $libc_cv_x86_64_tls = no; then
-  as_fn_error $? "the assembler must support TLS" "$LINENO" 5
-fi
-
-$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
-
-# work around problem with autoconf and empty lines at the end of files

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=089464316444bd5923ade2e239dc653b5b071bfc

commit 089464316444bd5923ade2e239dc653b5b071bfc
Author: Andreas Jaeger <aj@suse.de>
Date:   Mon Mar 19 20:58:05 2012 +0100

    Merge contents from sysdeps/i386/configure.in (without i686 check)

diff --git a/sysdeps/x86_64/configure.in b/sysdeps/x86_64/configure.in
index c53328b..5874c9a 100644
--- a/sysdeps/x86_64/configure.in
+++ b/sysdeps/x86_64/configure.in
@@ -1,5 +1,94 @@
 GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
-# Local configure fragment for sysdeps/x86_64/elf.
+# Local configure fragment for sysdeps/x86_64.
+
+AC_CHECK_HEADER([cpuid.h], ,
+  [AC_MSG_ERROR([gcc must provide the <cpuid.h> header])],
+  [/* No default includes.  */])
+
+AC_CACHE_CHECK(if -g produces usable source locations for assembler-with-cpp,
+	       libc_cv_cpp_asm_debuginfo, [dnl
+cat > conftest.S <<EOF
+#include "confdefs.h"
+
+/* comment on
+   two lines */
+	${libc_cv_dot_text}
+	${libc_cv_asm_global_directive} foo
+foo:
+	/* Unfortunately this test only works for a real instruction,
+	   not for any of the machine-independent pseudo-ops.
+	   So we just have to assume everybody has a "nop".  */
+	nop
+	/* comment */
+	nop
+	/* comment */
+	nop
+EOF
+if AC_TRY_COMMAND([${CC-cc} $CPPFLAGS $ASFLAGS -g -c conftest.S 1>&AS_MESSAGE_LOG_FD]) && {
+   ac_pattern='conftest\.S'
+   AC_TRY_COMMAND([readelf --debug-dump=line conftest.o |
+		   grep $ac_pattern 1>&AS_MESSAGE_LOG_FD])
+  }; then
+  libc_cv_cpp_asm_debuginfo=yes
+else
+  libc_cv_cpp_asm_debuginfo=no
+fi
+rm -f conftest*])AC_SUBST(libc_cv_cpp_asm_debuginfo)
+if test $libc_cv_cpp_asm_debuginfo = yes; then
+  AC_DEFINE(HAVE_CPP_ASM_DEBUGINFO)
+fi
+
+dnl Check if -msse4 works.
+AC_CACHE_CHECK(for SSE4 support, libc_cv_cc_sse4, [dnl
+if AC_TRY_COMMAND([${CC-cc} -msse4 -xc /dev/null -S -o /dev/null]); then
+  libc_cv_cc_sse4=yes
+else
+  libc_cv_cc_sse4=no
+fi])
+if test $libc_cv_cc_sse4 = yes; then
+  AC_DEFINE(HAVE_SSE4_SUPPORT)
+fi
+
+dnl Check if -mavx works.
+AC_CACHE_CHECK(for AVX support, libc_cv_cc_avx, [dnl
+if AC_TRY_COMMAND([${CC-cc} -mavx -xc /dev/null -S -o /dev/null]); then
+  libc_cv_cc_avx=yes
+else
+  libc_cv_cc_avx=no
+fi])
+if test $libc_cv_cc_avx = yes; then
+  AC_DEFINE(HAVE_AVX_SUPPORT)
+fi
+
+dnl Check if -msse2avx works.
+AC_CACHE_CHECK(for AVX encoding of SSE instructions, libc_cv_cc_sse2avx, [dnl
+if AC_TRY_COMMAND([${CC-cc} -msse2avx -xc /dev/null -S -o /dev/null]); then
+  libc_cv_cc_sse2avx=yes
+else
+  libc_cv_cc_sse2avx=no
+fi])
+if test $libc_cv_cc_sse2avx = yes; then
+  AC_DEFINE(HAVE_SSE2AVX_SUPPORT)
+fi
+
+dnl Check if -mfma4 works.
+AC_CACHE_CHECK(for FMA4 support, libc_cv_cc_fma4, [dnl
+if AC_TRY_COMMAND([${CC-cc} -mfma4 -xc /dev/null -S -o /dev/null]); then
+  libc_cv_cc_fma4=yes
+else
+  libc_cv_cc_fma4=no
+fi])
+if test $libc_cv_cc_fma4 = yes; then
+  AC_DEFINE(HAVE_FMA4_SUPPORT)
+fi
+
+dnl Check if -mno-vzeroupper works.
+AC_CACHE_CHECK(for -mno-vzeroupper support, libc_cv_cc_novzeroupper, [dnl
+if AC_TRY_COMMAND([${CC-cc} -mno-vzeroupper -xc /dev/null -S -o /dev/null]); then
+  libc_cv_cc_novzeroupper=yes
+else
+  libc_cv_cc_novzeroupper=no
+fi])
 
 # Check for support of thread-local storage handling in assembler and linker.
 AC_CACHE_CHECK(for x86-64 TLS support, libc_cv_x86_64_tls, [dnl
@@ -30,4 +119,4 @@ fi
 dnl It is always possible to access static and hidden symbols in an
 dnl position independent way.
 AC_DEFINE(PI_STATIC_AND_HIDDEN)
-# work around problem with autoconf and empty lines at the end of files
+# work around problem with autoconf and empty lines at the end of files
\ No newline at end of file

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=9d639b991868f8d139385d4dc4bed6dd6a65c8a6

commit 9d639b991868f8d139385d4dc4bed6dd6a65c8a6
Author: Andreas Jaeger <aj@suse.de>
Date:   Mon Mar 19 20:55:26 2012 +0100

    Move x86_64/elf files to x86_64

diff --git a/sysdeps/x86_64/elf/configure.in b/sysdeps/x86_64/configure.in
similarity index 100%
rename from sysdeps/x86_64/elf/configure.in
rename to sysdeps/x86_64/configure.in
diff --git a/sysdeps/x86_64/elf/start.S b/sysdeps/x86_64/start.S
similarity index 100%
rename from sysdeps/x86_64/elf/start.S
rename to sysdeps/x86_64/start.S

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                             |  117 +++++++++++
 debug/backtracesyms.c                 |   81 +++++++-
 debug/backtracesymsfd.c               |   86 +++++++-
 sysdeps/generic/elf/backtracesyms.c   |  122 -----------
 sysdeps/generic/elf/backtracesymsfd.c |  125 -----------
 sysdeps/generic/{elf => }/ifunc-sel.h |    0
 sysdeps/i386/Versions                 |    6 +
 sysdeps/i386/configure                |   43 ++++
 sysdeps/i386/configure.in             |   34 +++
 sysdeps/i386/elf/Versions             |    6 -
 sysdeps/i386/elf/configure            |  128 ------------
 sysdeps/i386/elf/configure.in         |   36 ----
 sysdeps/i386/{elf => }/start.S        |    3 +-
 sysdeps/unix/i386/start.c             |    2 -
 sysdeps/unix/sparc/start.c            |  186 -----------------
 sysdeps/unix/start.c                  |   95 ---------
 sysdeps/x86_64/configure              |  367 ++++++++++++++++++++++++++++++++-
 sysdeps/{i386 => x86_64}/configure.in |   79 +++++--
 sysdeps/x86_64/elf/configure          |  125 -----------
 sysdeps/x86_64/elf/configure.in       |   33 ---
 sysdeps/x86_64/{elf => }/start.S      |    0
 21 files changed, 770 insertions(+), 904 deletions(-)
 delete mode 100644 sysdeps/generic/elf/backtracesyms.c
 delete mode 100644 sysdeps/generic/elf/backtracesymsfd.c
 rename sysdeps/generic/{elf => }/ifunc-sel.h (100%)
 delete mode 100644 sysdeps/i386/elf/Versions
 delete mode 100644 sysdeps/i386/elf/configure
 delete mode 100644 sysdeps/i386/elf/configure.in
 rename sysdeps/i386/{elf => }/start.S (97%)
 delete mode 100644 sysdeps/unix/i386/start.c
 delete mode 100644 sysdeps/unix/sparc/start.c
 delete mode 100644 sysdeps/unix/start.c
 copy sysdeps/{i386 => x86_64}/configure.in (54%)
 delete mode 100644 sysdeps/x86_64/elf/configure
 delete mode 100644 sysdeps/x86_64/elf/configure.in
 rename sysdeps/x86_64/{elf => }/start.S (100%)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]