++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]
--- /dev/null
- Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004
- Free Software Foundation, Inc.
+ /* Startup code compliant to the ELF i386 ABI.
++ 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
+ 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/>. */
+
+ /* This is the canonical entry point, usually the first thing in the text
+ segment. The SVR4/i386 ABI (pages 3-31, 3-32) says that when the entry
+ point runs, most registers' values are unspecified, except for:
+
+ %edx Contains a function pointer to be registered with `atexit'.
+ This is how the dynamic linker arranges to have DT_FINI
+ functions called for shared libraries that have been loaded
+ before this code runs.
+
+ %esp The stack contains the arguments and environment:
+ 0(%esp) argc
+ 4(%esp) argv[0]
+ ...
+ (4*argc)(%esp) NULL
+ (4*(argc+1))(%esp) envp[0]
+ ...
+ NULL
+ */
+
+ #include "bp-sym.h"
+
+ .text
+ .globl _start
+ .type _start,@function
+ _start:
+ /* Clear the frame pointer. The ABI suggests this be done, to mark
+ the outermost frame obviously. */
+ xorl %ebp, %ebp
+
+ /* Extract the arguments as encoded on the stack and set up
+ the arguments for `main': argc, argv. envp will be determined
+ later in __libc_start_main. */
+ popl %esi /* Pop the argument count. */
+ movl %esp, %ecx /* argv starts just at the current stack top.*/
+
+ /* Before pushing the arguments align the stack to a 16-byte
+ (SSE needs 16-byte alignment) boundary to avoid penalties from
+ misaligned accesses. Thanks to Edward Seidl <seidl@janed.com>
+ for pointing this out. */
+ andl $0xfffffff0, %esp
+ pushl %eax /* Push garbage because we allocate
+ 28 more bytes. */
+
+ /* Provide the highest stack address to the user code (for stacks
+ which grow downwards). */
+ pushl %esp
+
+ pushl %edx /* Push address of the shared library
+ termination function. */
+
+ #ifdef SHARED
+ /* Load PIC register. */
+ call 1f
+ addl $_GLOBAL_OFFSET_TABLE_, %ebx
+
+ /* Push address of our own entry points to .fini and .init. */
+ leal __libc_csu_fini@GOTOFF(%ebx), %eax
+ pushl %eax
+ leal __libc_csu_init@GOTOFF(%ebx), %eax
+ pushl %eax
+
+ pushl %ecx /* Push second argument: argv. */
+ pushl %esi /* Push first argument: argc. */
+
+ pushl BP_SYM (main)@GOT(%ebx)
+
+ /* Call the user's main function, and exit with its value.
+ But let the libc call main. */
+ call BP_SYM (__libc_start_main)@PLT
+ #else
+ /* Push address of our own entry points to .fini and .init. */
+ pushl $__libc_csu_fini
+ pushl $__libc_csu_init
+
+ pushl %ecx /* Push second argument: argv. */
+ pushl %esi /* Push first argument: argc. */
+
+ pushl $BP_SYM (main)
+
+ /* Call the user's main function, and exit with its value.
+ But let the libc call main. */
+ call BP_SYM (__libc_start_main)
+ #endif
+
+ hlt /* Crash if somehow `exit' does return. */
+
+ #ifdef SHARED
+ 1: movl (%esp), %ebx
+ ret
+ #endif
+
+ /* To fulfill the System V/i386 ABI we need this symbol. Yuck, it's so
+ meaningless since we don't support machines < 80386. */
+ .section .rodata
+ .globl _fp_hw
+ _fp_hw: .long 3
+ .size _fp_hw, 4
+ .type _fp_hw,@object
+
+ /* Define a symbol for the first piece of initialized data. */
+ .data
+ .globl __data_start
+ __data_start:
+ .long 0
+ .weak data_start
+ data_start = __data_start