Commit Graph

27701 Commits

Author SHA1 Message Date
Roland McGrath
c1f5acd4f4 Robustify Linux kernel headers configure checks 2014-07-03 20:35:42 -07:00
Roland McGrath
4d614fe5e0 S390: Quash unused variable warning due to no-op THREAD_SET_POINTER_GUARD. 2014-07-03 19:17:00 -07:00
Siddhesh Poyarekar
38851324d8 Restore subdir conditional for tst-timer dependency. 2014-07-03 18:52:51 -07:00
Richard Henderson
69862e2511 alpha: Remove nearbyint and nearbyintf implementations
The original implementation was written for EV5, which does not
record inexact in the status register for /SU (but no /I) insns.
But EV6 does record the inexact status; the lack of /I simply
means that the exception is suppressed.

Adding feholdexcept becomes the bulk of the overhead, so we might
as well use the default implementation.
2014-07-03 10:37:59 -07:00
Richard Henderson
d5e16ade14 alpha: Implement math_opt_barrier and math_force_eval 2014-07-03 08:56:55 -07:00
Richard Henderson
ca7b945c73 alpha: Fix lround implementations
Use chopped rounding to add 0.5.
2014-07-03 08:52:45 -07:00
Richard Henderson
cd1175a373 alpha: Remove round and roundf implementations
Two bugs in these implementations: First is that the add of 0.5
was not done in chopped rounding mode (easily fixable).  Second
is that the method generates incorrect inexact exceptions for
small integral values (not easily fixable).
2014-07-03 08:45:57 -07:00
Richard Henderson
b3ec00e599 Changelog for last 8 patches 2014-07-03 08:38:41 -07:00
Richard Henderson
8c682bb22c Rely on HP_TIMING_AVAIL implies HP_SMALL_TIMING_AVAIL 2014-07-03 08:38:41 -07:00
Richard Henderson
05502548e9 Always provide HP_SMALL_TIMING_AVAIL 2014-07-03 08:38:36 -07:00
Richard Henderson
4052993954 aarch64: Add hp-timing.h 2014-07-03 08:38:34 -07:00
Richard Henderson
86e1a7ff92 Unify hp-timing implementations
Provide an hp-timing-common.h for ports to use.
2014-07-03 08:38:30 -07:00
Richard Henderson
428dd03f5a Remove HP_TIMING_DIFF_INIT and dl_hp_timing_overhead
Without HP_TIMING_ACCUM, dl_hp_timing_overhead is write-only.
If we remove it, there's no point in HP_TIMING_DIFF_INIT either.
2014-07-03 08:38:25 -07:00
Richard Henderson
c39323e9d2 Removing HP_TIMING_ACCUM as unused 2014-07-03 08:38:21 -07:00
Richard Henderson
850e0e032b Removing HP_TIMING_ZERO as unused 2014-07-03 08:38:18 -07:00
Richard Henderson
7db48f6aab powerpc: Remove dummy hp-timing.h
It's the same as the generic dummy version.
2014-07-03 08:38:15 -07:00
Maciej W. Rozycki
225f410f3e stdlib/tst-strtod-overflow: Bump timeout up yet
This test case is very, especially on targets using soft-float or QEMU
(where soft-float is used internally), and appears to be the only such
outlier.  Therefore rather than requiring to have TIMEOUTFACTOR set
large enough globally, bump up the local scaling factor instead.

	* stdlib/tst-strtod-overflow.c (TIMEOUT): Bump up to 30.
2014-07-03 08:07:55 +01:00
Siddhesh Poyarekar
3247f28556 Sync up loadmsgcat.c with gettext 2014-07-03 01:49:48 +05:30
Siddhesh Poyarekar
d12704c78f Fix Wundef warning for __STDC_VERSION__
c4c4124473 added the _Noreturn macro for
pre-C11 compilers, but it now throws a new Wundef warning during `make
check` for __STDC_VERSION__ which gcc does not define by default.  The
following patch fixes this in line with other uses of __STDC_VERSION__
in the file.
2014-07-03 01:49:48 +05:30
Siddhesh Poyarekar
05fdac772b Don't use __glibc_unlikely in shared code 2014-07-03 01:49:48 +05:30
Siddhesh Poyarekar
99f8dc9220 Fix -Wundef warning on PAGE_COPY_THRESHOLD
The PAGE_COPY_THRESHOLD macro is meant to be overridden by
architecture-specific pagecopy.h, but it is currently done only by
mach; all other architectures use the default.  Check to see if the
macro is defined in addition to whether it is set to a non-zero value.
2014-07-03 01:49:43 +05:30
Vidya Ranganathan
bc8ea38590 PowerPC: strcat optimization for PPC64/POWER7
This patch adds an ifunc power7 strcat symbol that uses the logic on
sysdeps/powerpc/strcat.c but call power7 strlen/strcpy symbols instead
of default ones.
2014-07-02 14:04:21 -05:00
Roland McGrath
fe5f34e470 Add missing #include for MIN use in dl-sysdep.c. 2014-07-02 11:10:08 -07:00
Siddhesh Poyarekar
d4eb8195e5 Fix typo and formatting in loadmsgcat.c
This reduces the differences with gettext version of loadmsgcat.c
2014-07-02 16:57:48 +05:30
Siddhesh Poyarekar
256aa66596 Fix typo in macro name
It is _POSIX_SIGNALS and not _POSUX_SIGNALS
2014-07-02 15:09:39 +05:30
Will Newton
b100f9aa77 malloc/obstack: Merge from gnulib
Merge the latest version of the obstack.c and obstack.h files
from gnulib. The majority of this change is coding style and
cosmetic comment changes but it also fixes a -Wundef warning
in the build as a side effect.

2014-07-02  Will Newton  <will.newton@linaro.org>

	* malloc/obstack.c: Merge from gnulib master.
	[HAVE_CONFIG_H]: Remove conditional code.
	[!_LIBC]: Include config.h.
	[!ELIDE_CODE]: Don't include inttypes.h, include
	stdint.h unconditionally.
	(print_and_abort): Mark as _Noreturn.
	(_obstack_allocated_p): Mark as __attribute_pure__.
	(obstack_free): Rename to __obstack_free.
	[!__attribute__]: Remove conditional code.
	* malloc/obstack.h: Merge from gnulib master.
	[__cplusplus]: Move conditional down.
	[!__attribute_pure__]: Define __attribute_pure__ here
	if it is not already defined.
	(_obstack_memory_used): Mark as __attribute_pure__.
	[!__obstack_free]: Define as obstack_free.
	[__GNUC__]: Remove check for ancient NeXT gcc.
2014-07-02 10:31:43 +01:00
Paul Eggert
c4c4124473 misc/sys/cdefs.h: Add _Noreturn macro for pre-C11 compilers
2014-07-02  Will Newton  <will.newton@linaro.org>
	    Paul Eggert  <eggert@cs.ucla.edu>

	* misc/sys/cdefs.h (_Noreturn): New macro, for pre-C11 compilers.
2014-07-02 10:31:42 +01:00
Siddhesh Poyarekar
e1e041c439 Add comment to gethnamaddr.c to warn that the file is unmaintained 2014-07-02 13:25:55 +05:30
Carlos O'Donell
d34570a6b8 hppa: Remove GLIBC_2.3 from librt.abilist.
This commit removes the aio_cancel and aio_cancel64 symbols at
GLIBC_2.3 from the ABI baseline. The ABI baseline is now complete
for hppa and considered stable.
2014-07-02 03:18:26 -04:00
Carlos O'Donell
ccf431ffe1 hppa: Add ABI baselines.
The following ABI baselines were tested against several old releases
of debian and gentoo. Several problems were discovered and fixed as
part of developing the ABI baselines.

Firstly, libBrokenLocale on gentoo exports __ctype_get_mb_cur_max
as @@GLIBC_2.0, but it should be @@GLIBC_2.2 since that's the minimum
version defined in shlib-versions for hppa. I don't know when this
broke, but master properly parses hppa's shlib-versions which clearly
lists libBrokenLocale as defaulting to GLIBC_2.2. Therefore I'm
accepting GLBIC_2.2 as the correct version for this symbol and setting
the baseline to that, despite the fact that the present distribution
is wrong. I don't expect that any new applications should be using
libBrokenLocale, so it should match the oldest behaviour which is to
export a GLIBC_2.2 symbol. For example in debian's 2.7 has it at
version GLIBC_2.2.

Secondly, aio_cancel and aio_cancel64 previously had a compat symbol
at version @GLIBC_2.1 with a new symbol at @@GLIBC_2.3[1]. During the
Linuxthreads to NPTL transition the file aio_cancel.c was lost for hppa
and that resulted in just @@GLIBC_2.1 versions of these symbols being
exported. The @@GLIBC_2.1 version works correctly and uses the right
value of ECANCELLED. Therefore if I were to fix this today it might
break correctly working applications using aio_cancel*@GLIBC_2.1 by
causing those to use the old aio_cancel that used the older value
of ECANCELLED. Thus the best option is to accept that the ABI changed
and ignore older applications in favour of newer applications. The
best thing to do is cleanup the version files (included in the patch).

The rest of the ABI was as expected (ignoring __p_type_syms size
change in 2008).
2014-07-01 23:59:47 -04:00
Roland McGrath
ca06321df0 Add missing #include for MIN/MAX users. 2014-07-01 15:01:24 -07:00
Richard Henderson
631021e0aa alpha: Fix isnan
The isunordered formulation raises SIGFPE for SNaN.
2014-07-01 09:54:29 -07:00
Richard Henderson
a1ac3184fa alpha: Update libm-test-ulps 2014-07-01 09:54:27 -07:00
Stefan Liebler
0c1d731ff9 S/390: Regenerate ULPs 2014-07-01 11:04:58 -03:00
Siddhesh Poyarekar
76985d3e03 Remove MULTI_PTRS_ARE_ALIASES in dns-hosts.c
The code in gethnamaddr.c for gethostbyaddr used and set this macro to
allow multiple PTR records to be added as aliases.  This was useful
for gethostbyaddr since it returns a hostent structure, which can
return aliases.

The gethnamaddr.c source however is unused in glibc since pretty much
forever.  Instead, the DNS lookup bits for gethostbyaddr (as well as
getnameinfo) are implemented in dns-hosts.c and in that implementation
all but one (the first one) of the multiple PTR records are ignored.
Since gethnamaddr.c is essentially dead code, ignore that
implementation and replace the MULTI_PTRS_ARE_ALIASES bit with a
comment mentioning that bind adds PTR records as aliases while we
don't.
2014-07-01 17:23:20 +05:30
Joseph Myers
b0cb309635 MicroBlaze: Update kernel-features.h for syscalls added in 3.15
Now that the MicroBlaze 3.15 kernel has the pselect6, preadv and
pwritev syscalls, this patch updates kernel-features.h so they are
assumed to be present for 3.15 and later kernels.

2014-06-17  Joseph Myers  <joseph@codesourcery.com>

	* sysdeps/unix/sysv/linux/microblaze/kernel-features.h
	[__LINUX_KERNEL_VERSION >= 0x030f00] (__ASSUME_PSELECT): Do not
	undefine.
	[__LINUX_KERNEL_VERSION >= 0x030f00] (__ASSUME_PREADV): Likewise.
	[__LINUX_KERNEL_VERSION >= 0x030f00] (__ASSUME_PWRITEV): Likewise.

Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-07-01 14:57:59 +10:00
Roland McGrath
4d76cb3935 MicroBlaze: Consolidate nptl/ subdirectories under linux/...
Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-07-01 14:57:58 +10:00
Roland McGrath
83d7d24b96 MicroBlaze: Consolidate NPTL/non versions of vfork 2014-07-01 14:57:57 +10:00
Roland McGrath
862e0f2721 MicroBlaze: Move NPTL public headers to sysdeps/microblaze/nptl/. 2014-07-01 14:57:56 +10:00
Roland McGrath
9bca952acb MicroBlaze: Define TLS_DEFINE_INIT_TP 2014-07-01 14:57:56 +10:00
Roland McGrath
8b4b5da7b6 MicroBlaze: Convert fork.c to arch-fork.h 2014-07-01 14:57:50 +10:00
David Holsgrove
0cdcad1769 MicroBlaze: Add missing sysdep-cancel.h implementation
And update socket.S, Makefile to use *_nocancel definitions.

Absence of sysdep-cancel.h was not apparent until Roland's
not-cancel.h unification.

2014-06-30  David Holsgrove  <david.holsgrove@xilinx.com>

  * sysdeps/unix/sysv/linux/microblaze/sysdep-cancel.h: New file
  * sysdeps/unix/sysv/linux/microblaze/socket.S: Update SINGLE_THREAD_P
  * sysdeps/unix/sysv/linux/microblaze/Makefile: Add to libpthread-routines

Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-07-01 09:58:03 +10:00
Adhemerval Zanella
9b71d0e38c Update powerpc-fpu ULPs. 2014-06-30 17:38:43 -04:00
Joseph Myers
ae05a9d77f Regenerate MIPS libm-test-ulps.
This patch regenerates libm-test-ulps for MIPS.

	* sysdeps/mips/mips32/libm-test-ulps: Regenerated.
	* sysdeps/mips/mips64/libm-test-ulps: Likewise.
2014-06-30 21:34:20 +00:00
Joseph Myers
a7672a2f81 Regenerate powerpc-nofpu libm-test-ulps.
This patch regenerates libm-test-ulps for powerpc-nofpu.

	* sysdeps/powerpc/nofpu/libm-test-ulps: Regenerated.
2014-06-30 21:26:49 +00:00
Joseph Myers
665390c2e7 Regenerate ARM libm-test-ulps.
This patch regenerates libm-test-ulps for ARM.  As before it may be
useful for someone building for a configuration with VFMA enabled to
do a followup regeneration for any additional ulps in that
configuration.

Committed.

	* sysdeps/arm/libm-test-ulps: Regenerated.
2014-06-30 21:20:35 +00:00
Maciej W. Rozycki
d7a05d0728 test-skeleton: Kill any child process's offspring
This makes sure any subprocesses created by the program being tested get
killed as well if their parent times out.  Otherwise if they are really
stuck, they may remain there running forever after the test case and
then the whole test suite has completed, until killed by hand.

	* test-skeleton.c (signal_handler): Kill the whole process group
	before killing the child individually.
	(main): Report any failure on `setpgid'.
2014-06-30 20:11:56 +01:00
Roland McGrath
46f1d8a6b5 ARM: Split Linuxism out of sysdeps/arm/nptl/tls.h 2014-06-30 11:19:22 -07:00
Joseph Myers
ce9c5b3e95 Fix ldbl-128 expm1l spurious underflow (bug 16539).
This patch fixes spurious underflows from ldbl-128 expm1l, as reported
in <https://sourceware.org/ml/libc-alpha/2014-06/msg00835.html> and
exposed by the tests added for such a bug in the x86 / x86-64
version.  The bug and fix are essentially the same, so no separate bug
is filed in Bugzilla.

Tested for mips64.

	[BZ #16539]
	* sysdeps/ieee754/ldbl-128/s_expm1l.c: Include <float.h>.
	(__expm1l): Return argument unchanged when small but not
	subnormal.
2014-06-30 17:38:16 +00:00
Joseph Myers
3a6e988706 Rename soft-fp op-[1248].h variables to avoid risk of shadowing.
Continuing the soft-fp variable renaming from
<https://sourceware.org/ml/libc-alpha/2014-06/msg00434.html> to avoid
shadowing if two macros happen to use the same variable name and that
variable is involved in an argument one of those macros passes to
another, this patch renames variables in op-[1248].h.  (The two
patches are to different files and are independent of each other.)

Tested for powerpc32 (soft-float) and mips64 that this makes no change
to the disassembly of installed shared libraries.

	* soft-fp/op-1.h (_FP_UNPACK_RAW_1): Rename local variables to
	include macro name.
	(_FP_UNPACK_RAW_1_P): Likewise.
	(_FP_PACK_RAW_1): Likewise.
	(_FP_PACK_RAW_1_P): Likewise.
	(_FP_MUL_MEAT_1_wide): Likewise.
	(_FP_MUL_MEAT_DW_1_hard): Likewise.
	(_FP_MUL_MEAT_1_hard): Likewise.
	(_FP_DIV_MEAT_1_imm): Likewise.
	(_FP_DIV_MEAT_1_udiv_norm): Likewise.
	(_FP_DIV_MEAT_1_udiv): Likewise.
	* soft-fp/op-2.h (__FP_FRAC_DEC_2): Likewise.
	(_FP_UNPACK_RAW_2): Likewise.
	(_FP_UNPACK_RAW_2_P): Likewise.
	(_FP_PACK_RAW_2): Likewise.
	(_FP_PACK_RAW_2_P): Likewise.
	(_FP_MUL_MEAT_DW_2_wide): Likewise.
	(_FP_MUL_MEAT_2_wide): Likewise.
	(_FP_MUL_MEAT_DW_2_wide_3mul): Likewise.
	(_FP_MUL_MEAT_2_wide_3mul): Likewise.
	(_FP_MUL_MEAT_DW_2_gmp): Likewise.
	(_FP_MUL_MEAT_2_gmp): Likewise.
	(_FP_DIV_MEAT_2_udiv): Likewise.
	* soft-fp/op-4.h (_FP_FRAC_SLL_4): Likewise.
	(_FP_FRAC_SRL_4): Likewise.
	(_FP_FRAC_SRST_4): Likewise.
	(_FP_FRAC_SRS_4): Likewise.
	(_FP_UNPACK_RAW_4): Likewise.
	(_FP_UNPACK_RAW_4_P): Likewise.
	(_FP_PACK_RAW_4): Likewise.
	(_FP_PACK_RAW_4_P): Likewise.
	(_FP_MUL_MEAT_DW_4_wide): Likewise.
	(_FP_MUL_MEAT_4_wide): Likewise.
	(_FP_MUL_MEAT_4_gmp): Likewise.
	(umul_ppppmnnn): Likewise.
	(_FP_DIV_MEAT_4_udiv): Likewise.
	(__FP_FRAC_ADD_4): Likewise.
	(__FP_FRAC_SUB_3): Likewise.
	(__FP_FRAC_SUB_4): Likewise.
	(__FP_FRAC_DEC_3): Likewise.
	(__FP_FRAC_DEC_4): Likewise.
	(__FP_FRAC_ADDI_4): Likewise.
	* soft-fp/op-8.h (_FP_FRAC_SLL_8): Likewise.
	(_FP_FRAC_SRL_8): Likewise.
	(_FP_FRAC_SRS_8): Likewise.
2014-06-30 17:37:10 +00:00