The convert_bit macro allows the compiler to translate the bit
positions more efficiently. The assumption of only running at
program startup allows eliding the __ieee_get_fp_control call.
* sysdeps/i386/i686/fpu/multiarch/s_sinf-sse2.S: Fix
unwind info if defined PIC. Fix special cases description.
* sysdeps/i386/i686/fpu/multiarch/s_cosf-sse2.S: Likewise.
H.J. Lu [Thu, 6 Sep 2012 23:03:32 +0000 (16:03 -0700)]
Remove _dl_initial_dtv
* csu/libc-tls.c (static_dtv): Renamed to ...
(_dl_static_dtv): This. Make it global.
(_dl_initial_dtv): Removed.
(__libc_setup_tls): Updated.
* elf/dl-tls.c (DL_INITIAL_DTV): New macro.
(_dl_deallocate_tls): Replace GL(dl_initial_dtv) with
DL_INITIAL_DTV.
Chris Metcalf [Thu, 6 Sep 2012 15:43:56 +0000 (11:43 -0400)]
tile: fix type of prfpregset_t in <sys/procfs.h>
The previous dummy definition (as type int) was fine in general, since
tile doesn't have floating-point registers, but it confused gdb's
configure, leading to later compile errors. This change also makes
prfpregset_t parallel to prgregset_t, which seems like generally the
right thing regardless of the non-existence of the actual registers :-)
Return requested size for malloc_usable_size when MALLOC_CHECK_ > 0
[BZ #1349]
malloc_usable_size returns the usable size in an allocated chunk,
which may be >= the requested size. In the case of MALLOC_CHECK_ being
exported to > 0 however, only the requested size is usable, since a
magic value is written at the end of the request size to trap writes
beyond request bounds. Hence, when MALLOC_CHECK_ is exported to > 0,
malloc_usable_size() should return the request size.
David S. Miller [Wed, 5 Sep 2012 02:20:03 +0000 (19:20 -0700)]
Use sparcv8 GMP routines when building 32-bit sparcv9.
* sysdeps/sparc/sparc32/sparcv9/addmul_1.S: New file.
* sysdeps/sparc/sparc32/sparcv9/submul_1.S: New file.
* sysdeps/sparc/sparc32/sparcv9/mul_1.S: New file.
* sysdeps/i386/i686/fpu/multiarch/s_sinf-sse2.S: New file.
* sysdeps/i386/i686/fpu/multiarch/s_cosf-sse2.S: New file.
* sysdeps/i386/i686/fpu/multiarch/s_sinf.c: New file.
* sysdeps/i386/i686/fpu/multiarch/s_cosf.c: New file.
* sysdeps/ieee754/flt-32/s_sinf.c (SINF, SINF_FUNC): Add macros
for using routine as __sinf_ia32.
Use macro for function declaration and weak_alias.
* sysdeps/ieee754/flt-32/s_cosf.c (COSF, COSF_FUNC): Add macros
for using routine as __cosf_ia32.
Use macro for function declaration and weak_alias.
H.J. Lu [Sun, 2 Sep 2012 12:22:24 +0000 (05:22 -0700)]
Use the first element of GOT for ld.so addresses
[BZ #14538]
* sysdeps/x86_64/dl-machine.h (elf_machine_dynamic): Use the
first element of the GOT.
(elf_machine_load_address): Return the difference between
the runtime address of _DYNAMIC and elf_machine_dynamic ().
Don't make ttyname* fail if proc filesystem is not available
The ttyname and ttyname_r functions on Linux now fall back to
searching for the tty file descriptor in /dev/pts or /dev if /proc is
not available. This allows creation of chroots without the procfs
mounted on /proc.
Guido Guenther [Mon, 27 Aug 2012 16:20:25 +0000 (12:20 -0400)]
mips: clear condition bit 23 in fpu too
We've been carrying this in Gentoo for quite a long time to fix some test
failures that people hit.
Original message:
> make[4]: *** [/glibc/glibc-package-2.3/mips-linux/obj/math/test-fpucw.out] Error 1
This test fails since the read back fpu control word is 0x80000 instead
of 0x0. I wonder if this patch is correct:
...
which additionally masks out the condition bit 23 - note that the other
condition bits (25-31) are masked out too?
URL: http://sourceware.org/ml/libc-alpha/2002-10/msg00392.html Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Wed, 22 Aug 2012 04:21:31 +0000 (00:21 -0400)]
rename V variable to lib-version
Due to the rise of kbuild type build systems (as the Linux kernel is a
popularly emulated environment), the V variable has become common as a
knob for controlling verbosity. Unfortunately, if you run `make V=1`
with glibc during install, it fails with weird errors due to the glibc
build already using this variable for versioning information.
Granted, overriding this variable in the glibc context makes no sense
so people shouldn't be doing it, but when paired with build frameworks
that like to use one set of options for all packages, glibc starts to
stick out as an oddball (in that it fails). Considering it's easy
enough to rename (it's used in just one place), let's do so.
Will Schmidt [Wed, 22 Aug 2012 16:04:42 +0000 (11:04 -0500)]
Add versions of wcscpy, wcschr, wcsrchr for power6/power7.
Initially based on the versions found in wcsmbs/* ; these files have
been changed by hand unrolling, and adding some additional variables
to allow some read-ahead to occur, which then relieves some of the
wait-for-increment/wait-for-load/wait-for-compare-results pressure
that was slowing down every iteration through the while-loop.
For 64-bit Power7, These changes give an approx 20% throughput boost
for the wcschr and wcsrchr functions; and approx 40% boost for the
wcscpy function. 32-bit improvements appear to be slightly better
with ~ %30 and ~ %45 respectively. Results for Power6 closely match
those for power7.