Commit Graph

26496 Commits

Author SHA1 Message Date
Joseph Myers
ea3bc4e821 Fix x86 sqrt rounding (bug 14032). 2013-11-29 16:31:16 +00:00
Joseph Myers
0712c9d861 Test sqrt in all rounding modes. 2013-11-29 16:28:47 +00:00
Joseph Myers
ffb536d0ac Start generating libm tests automatically with MPFR. 2013-11-29 16:27:55 +00:00
Siddhesh Poyarekar
97161a9373 Add 16214 to NEWS 2013-11-29 19:44:42 +05:30
Andreas Krebbel
acd98a8ed1 [BZ #16214] S/390: Fix TLS GOT pointer setup. 2013-11-29 09:57:04 +01:00
Joseph Myers
7475aef5fa Document libm accuracy goals. 2013-11-28 22:31:03 +00:00
Joseph Myers
8bca7cd830 Remove unused ldbl-96 functions (bug 15004). 2013-11-28 20:50:03 +00:00
Joseph Myers
91a1f3fea0 Add powerpc-nofpu/e500 support functions for atomic compound assignment and FLT_ROUNDS. 2013-11-28 18:01:41 +00:00
Joseph Myers
c5df760908 Document some libm error handling intents. 2013-11-28 16:52:36 +00:00
Joseph Myers
3c1c46a64a Fix dbl-64 e_sqrt.c for non-default rounding modes (bug 16271). 2013-11-28 16:50:38 +00:00
Siddhesh Poyarekar
5a4c6d53f5 Get canonical name in getaddrinfo from hosts file for AF_INET (fixes 16077)
AF_INET lookup in hosts file uses _nss_files_gethostbyname2_r, which
is not capable of returning a canonical name if it has found one.
This change adds _nss_files_gethostbyname3_r, which wraps around
_nss_files_gethostbyname2_r and then returns result.h_name as the
canonical name.
2013-11-28 17:18:12 +05:30
Ondřej Bílka
897b98ba4d Make memset in calloc a tail call. 2013-11-28 12:05:50 +01:00
Chris Leonard
2ddb48d376 Add lang_name to various locales. 2013-11-27 15:52:46 -05:00
Aurelien Jarno
24d8773d06 MIPS: Fix RLIM64_INFINITY constant for O32 and N32 ABIs
Fix the RLIM64_INFINITY constant for O32 and N32 ABIs to match the
kernel one. Change the getrlimit64/setrlimit64 into old compat symbols,
and provide the Linux generic getrlimit64/setrlimit64 functions as
GLIBC_2_19 version.
2013-11-27 17:38:16 +01:00
Aurelien Jarno
9480dfe2a3 MIPS: Add wrappers to get/setrlimit64 to fix RLIM64_INFINITY constant
RLIM64_INFINITY was supposed to be a glibc convention rather than
anything seen by the kernel, but it ended being passed to the kernel
through the prlimit64 syscall.  On O32 and N32 ABIs, we therefore
end-up with different values on the userland and kernel side:

* On the kernel side, the value is defined for all architectures as
  include/uapi/linux/resource.h:

  #define RLIM64_INFINITY           (~0ULL)

* On the GNU libc side, the value is defined in
  ports/sysdeps/unix/sysv/linux/mips/bits/resource.h:

  For the O32 and N32 ABI:
  #  define RLIM64_INFINITY 0x7fffffffffffffffULL

  and for the N64 ABI:
  #  define RLIM64_INFINITY 0xffffffffffffffffUL

This was not a problem until the prlimit64 syscall was wired in the
2.6.36 kernel. Given the GLIBC uses the prlimit64 syscall to implement
getrlimit64 and setrlimit64, pam_limits.so is setting the limits to
a very big value instead of infinity. As a normal user process can
later only decrease the value and not increase it, it will later get
and EPERM error when trying to set the value to infinity with setrlimit.

The GLIBC has this constant for more than 7 years, and as it is defined
in a header file, it means a lot of binaries are in the wild. This patch
fixes that by adding a wrapper to fix the value passed to or received
from the kernel, before or after calling the prlimit64 syscall.
2013-11-27 17:36:51 +01:00
Ondřej Bílka
a950349667 Also remove benchtests/bench-strsep-ifunc.c 2013-11-26 17:34:34 +01:00
Will Newton
7520ff8c74 aarch64: Enable ifunc support.
Add support for handling the R_AARCH64_IRELATIVE relocation and
STT_GNU_IFUNC symbols to the aarch64 port.

ports/ChangeLog.aarch64:

2013-11-26  Will Newton  <will.newton@linaro.org>

	* sysdeps/aarch64/dl-irel.h: Include ldsodefs.h.
	(ELF_MACHINE_IRELA): Define.  (elf_ifunc_invoke): Pass
	hwcap to ifunc resolver function.  (elf_irela): New function.
	* sysdeps/aarch64/dl-machine.h: Include dl-irel.h.
	(elf_machine_rela) Handle STT_GNU_IFUNC symbols and
	R_AARCH64_IRELATIVE relocations.  (elf_machine_lazy_rel):
	Handle R_AARCH64_IRELATIVE relocations.
2013-11-26 16:18:04 +00:00
Uros Bizjak
6f476861be Avoid "left shift count >= width of type" warnings in soft-fp code. 2013-11-26 16:05:10 +00:00
Carlos O'Donell
2fe162299f NEWS: Only public headers have __unused/__block changed. 2013-11-26 09:47:45 -05:00
Carlos O'Donell
08d76093f4 NEWS: Mention __unused and __block removal. 2013-11-26 09:01:52 -05:00
Adhemerval Zanella
bd12ab55c0 PowerPC: Fix __fe_nomask_env missing symbol
This patch fix the missing symbol __fe_nomask_env from commit
41e8926aa4 for GLIBC_2.1.
2013-11-26 07:25:08 -06:00
Ondřej Bílka
52bb65431f Remove duplicate ifunc tests. 2013-11-26 12:58:28 +01:00
Ondřej Bílka
2787db97ec Add changelog. 2013-11-26 12:56:08 +01:00
Ondřej Bílka
826fa85580 Remove duplicate ifunc benchtests. 2013-11-26 12:48:33 +01:00
Ondřej Bílka
ab260039a8 Fix typo in _dl_tlsdesc_resolve_hold. 2013-11-26 12:42:45 +01:00
Ondřej Bílka
d1d9eaf478 Use __glibc_reserved instead __unused. 2013-11-26 12:32:28 +01:00
Joseph Myers
246b27983b Fix bug ordering in NEWS. 2013-11-25 22:27:06 +00:00
Joseph Myers
afe376e4a2 Add bug 11214 to NEWS. 2013-11-25 22:26:18 +00:00
Chris Leonard
9de41b6958 revert hebrew lang_name addition 2013-11-25 15:36:55 -05:00
Chris Leonard
f70893aacf revert hebrew lang_name addition 2013-11-25 15:31:36 -05:00
Chris Leonard
5d771331c1 Add lang_name to various locales. 2013-11-25 15:20:41 -05:00
Carlos O'Donell
a7624ed987 Fix typo in sys/ptrace.h.
The event code is PTRACE_EVENT_SECCOMP, not PTRAVE_EVENT_SECCOMP.
This patch fixes the V->C typo. There are no ABI issues since the
number remains the same for the code. Code using the old wrong
name will need to be updated.
2013-11-25 14:57:42 -05:00
Paul Pluzhnikov
67ea2c9a69 Fix intermittent failure in tst-getpid2.
2013-11-25  Paul Pluzhnikov  <ppluzhnikov@google.com>

	[BZ #11214]
	* Makefile (tst-getpid2-ENV): New variable.
2013-11-25 11:38:01 -08:00
Joseph Myers
63cfe52b6d Fix powerpc-nofpu build. 2013-11-25 19:07:55 +00:00
Adhemerval Zanella
41e8926aa4 PowerPC: Set/restore rounding mode only when needed
This patch helps some math functions performance by adding the libc_fexxx
variant of inline functions to handle both FPU round and exception set/restore
and by using them on the libc_fexxx_ctx functions. It is based on already coded
fexxx family functions for PPC with fpu.

Here is the summary of performance improvements due this patch (measured on a
POWER7 machine):

Before:

cos(): ITERS:9.5895e+07: TOTAL:5116.03Mcy, MAX:77.6cy, MIN:49.792cy, 18744 calls/Mcy
exp(): ITERS:2.827e+07: TOTAL:5187.15Mcy, MAX:494.018cy, MIN:38.422cy, 5450.01 calls/Mcy
pow(): ITERS:6.1705e+07: TOTAL:5144.26Mcy, MAX:171.95cy, MIN:29.935cy, 11994.9 calls/Mcy
sin(): ITERS:8.6898e+07: TOTAL:5117.06Mcy, MAX:83.841cy, MIN:46.582cy, 16982 calls/Mcy
tan(): ITERS:2.9473e+07: TOTAL:5115.39Mcy, MAX:191.017cy, MIN:172.352cy, 5761.63 calls/Mcy

After:

cos(): ITERS:2.05265e+08: TOTAL:5111.37Mcy, MAX:78.754cy, MIN:24.196cy, 40158.5 calls/Mcy
exp(): ITERS:3.341e+07: TOTAL:5170.84Mcy, MAX:476.317cy, MIN:15.574cy, 6461.23 calls/Mcy
pow(): ITERS:7.6153e+07: TOTAL:5129.1Mcy, MAX:147.5cy, MIN:30.916cy, 14847.2 calls/Mcy
sin(): ITERS:1.58816e+08: TOTAL:5115.11Mcy, MAX:1490.39cy, MIN:22.341cy, 31048.4 calls/Mcy
tan(): ITERS:3.4964e+07: TOTAL:5114.18Mcy, MAX:177.422cy, MIN:146.115cy, 6836.68 calls/Mcy
2013-11-25 06:34:41 -06:00
Chris Leonard
085b5ddfe3 Add lang_name to various locales. 2013-11-24 19:58:39 -05:00
Chris Leonard
05a209fe3b revert error-generated by bs_BA. 2013-11-23 18:07:00 -05:00
Chris Leonard
7ea1ebb5e3 Add lang_name to various locales. 2013-11-23 16:29:48 -05:00
Chris Leonard
d5a4ef504e Add lang_name to various locales. 2013-11-23 13:10:17 -05:00
Roland McGrath
068dcfd675 ARM: Fix memcpy computed-jump calculations for ARM_ALWAYS_BX case. 2013-11-22 11:39:20 -08:00
Chris Leonard
12e0e8c65d Add lang_name to German, English, Spanish, French locales. 2013-11-22 14:27:18 -05:00
Roland McGrath
070906ffd3 Add missing #include for malloc/hooks.c code. 2013-11-21 15:49:50 -08:00
Roland McGrath
6851bd4d97 Adjust generic swapon prototype to match Linux version. 2013-11-21 15:44:26 -08:00
Meador Inge
84ae135d32 Use __glibc_block in public headers.
As detailed in PR11157, the use of '__block' is known to interfere
with keywords in some environments, such as the Clang -fblocks extension.
Recently a similar issue was raised concerning the use of '__unused'
and a '__glibc' prefix was proposed to create a glibc implementation
namespace for these sorts of issues [1].  This patches takes that
approach.

[1] https://sourceware.org/ml/libc-alpha/2012-02/msg00047.html
[2] http://lists.debian.org/debian-glibc/2013/11/msg00020.html
2013-11-21 16:57:37 -05:00
Guy Martin
daf75146de Don't use broken DL_AUTO_FUNCTION_ADDRESS()
On hppa and ia64, the macro DL_AUTO_FUNCTION_ADDRESS() uses the
variable fptr[2] in it's own scope.

The content of fptr[] is thus undefined right after the macro exits.
Newer gcc's (>= 4.7) reuse the stack space of this variable triggering
a segmentation fault in dl-init.c:69.

To fix this we rewrite the macros to make the call directly to init
and fini without needing to pass back a constructed function pointer.
2013-11-21 15:52:31 -05:00
Chris Leonard
d33cafadfe Add lang_name to Arabic locales. 2013-11-21 14:43:51 -05:00
Chung-Lin Tang
7cf8ac4c31 linux-generic: fix alignment of struct stat/statfs for nios2
The hard alignment of 8 was appropriate for most platforms for
which 8-byte values are 8-byte aligned, but this is not true
for the nios2 platform, so only align to the alignment of the
8-byte type on the platform.

Remove the explicit alignment of struct statfs as it's redundant.
2013-11-20 16:12:18 -05:00
Paul Pluzhnikov
4b98b2dcdd Fix missing > on email. 2013-11-20 10:38:20 -08:00
Paul Pluzhnikov
c8b82b81de Fix failure in tst-cleanup2 and tst-cleanupx2 with gcc-4.9
gcc (GCC) 4.9.0 20131114 (experimental)

2013-11-20  Paul Pluzhnikov  <ppluzhnikov@google.com

	* Makefile (tst-cleanup2, tst-cleanupx2): Add -fno-builtin
2013-11-20 10:25:57 -08:00
Paul Pluzhnikov
71655786bc Revert "Fix failure in nptl/tst-cleanup when building with"
This reverts commit 78271fa91a.

Actually, a different fix is needed.
2013-11-20 10:13:37 -08:00