Commit Graph

25692 Commits

Author SHA1 Message Date
Adhemerval Zanella
83e7640f6b PowerPC: Add time vDSO support
PowerPC kernel now provides a vDSO implementation for time syscall
(commit fcb41a2030abe0eb716ef0798035ef9562097f42). This patch changes
time syscall wrapper to use the vDSO when available. It also changes
the default non vDSO time on PowerPC to use sysdeps/posix/time.c
(since gettimeofday is a vDSO call).
2013-05-03 15:04:54 -05:00
Joseph Myers
c31a5b1e8f Consistently use TEST_f_f1 in lgamma tests. 2013-05-03 19:05:37 +00:00
Joseph Myers
d5dc2af390 Don't use IGNORE_ZERO_INF_SIGN in hypot tests. 2013-05-03 19:04:52 +00:00
Andreas Jaeger
164fd39d05 Sync with Linux 3.9
* sysdeps/gnu/netinet/tcp.h (TCP_TIMESTAMP): New value, from
	Linux 3.9.
	* sysdeps/unix/sysv/linux/bits/socket.h (PF_VSOCK, AF_VSOCK):
	Add.
	(PF_MAX): Adjust for VSOCK change.
2013-05-03 20:52:00 +02:00
Adhemerval Zanella
8237f48c90 Update powerpc libm-test ULPs 2013-05-03 07:33:49 -05:00
Carlos O'Donell
9df02941c2 Add yesstr and nostr to en_CA, es_AR, and es_ES
We add yesstr and nostr to three more locales.
We ignore the issue of capitalization of the first
character in yesstr and nostr. All locales will need
to be revisited to make this uniform policy change.

---

2013-05-02  Carlos O'Donell  <carlos@redhat.com>

	[BZ #15264]
	* localedata/locales/en_CA (LC_MESSAGES): Define yesstr and nostr.
	* localedata/locales/es_AR (LC_MESSAGES): Copy es_ES.
	* localedata/locales/es_ES (LC_MESSAGES): Define yesstr and nostr.
2013-05-02 23:24:21 -04:00
Allan McRae
bb5f27adca Add bug 14952 to ChangeLog and NEWS
Fixed with commit 0695940b.
2013-05-03 11:14:43 +10:00
David S. Miller
d422395e31 Update Sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-05-02 12:25:28 -07:00
Ondrej Bilka
a07c5731d6 Remove duplicate __strcmp_cg
The __strcmp_cg code was duplicate of of __strcmp_gc. This patch unifies
these two cases into one.
2013-05-01 20:55:06 +02:00
Roland McGrath
1324e37f2e Add missing #include in sysdeps/posix/opendir.c. 2013-05-01 09:27:09 -07:00
Richard Smith
0695940b8a Use __gnu_inline__ for __extern_always_inline in g++-4.2
Use the __gnu_inline__ attribute in _FORTIFY_SOURCE's __extern_always_inline
macro whenever the compiler supports it. Previously this macro only included
the __gnu_inline__ attribute in C++ mode for gcc >= 4.3. However,
__gnu_inline__ semantics are always desired for the __extern_always_inline
functions, and are available in g++ 4.2 (and some releases of g++ 4.1, and
also in Clang, which claims to be g++ 4.2).

This change stops g++-4.2 from emitting weak definitions for the fortify
wrapper functions if they can't be inlined, and also improves Clang
compatibility.
2013-05-01 21:59:01 +10:00
Joseph Myers
10de07f5fd Fix catan, catanh spurious underflows (bug 15423). 2013-05-01 10:07:00 +00:00
Adhemerval Zanella
cb4d54147e Update powerpc libm-test ULPs 2013-04-30 08:51:02 -05:00
Joseph Myers
296f21e7bd Add bug 15416 to NEWS. 2013-04-30 11:29:32 +00:00
Joseph Myers
caf84319c1 Fix catan, catanh inaccuracy from atan2 denominators near 0 (bug 15416). 2013-04-30 11:27:35 +00:00
Siddhesh Poyarekar
6dbe713d85 Format s_sin.c 2013-04-30 14:18:57 +05:30
Siddhesh Poyarekar
f0ee064b7d Allow multiple input domains to be run in the same benchmark program
Some math functions have distinct performance characteristics in
specific domains of inputs, where some inputs return via a fast path
while other inputs require multiple precision calculations, that too
at different precision levels.  The way to implement different domains
was to have a separate source file and benchmark definition, resulting
in separate programs.

This clutters up the benchmark, so this change allows these domains to
be consolidated into the same input file.  To do this, the input file
format is now enhanced to allow comments with a preceding # and
directives with two # at the begining of a line.  A directive that
looks like:

tells the benchmark generation script that what follows is a different
domain of inputs.  The value of the 'name' directive (in this case,
foo) is used in the output.  The two input domains are then executed
sequentially and their results collated separately.  with the above
directive, there would be two lines in the result that look like:

func(): ....
func(foo): ...
2013-04-30 14:17:57 +05:30
Siddhesh Poyarekar
d569c6eeb4 Maintain runtime of each benchmark at ~10 seconds
The idea to run benchmarks for a constant number of iterations is
problematic.  While the benchmarks may run for 10 seconds on x86_64,
they could run for about 30 seconds on powerpc and worse, over 3
minutes on arm.  Besides that, adding a new benchmark is cumbersome
since one needs to find out the number of iterations needed for a
sufficient runtime.

A better idea would be to run each benchmark for a specific amount of
time.  This patch does just that.  The run time defaults to 10 seconds
and it is configurable at command line:

  make BENCH_DURATION=5 bench
2013-04-30 14:10:20 +05:30
Roland McGrath
a6a242fe7c Make stub fchdir.c define __fchdir. 2013-04-29 14:30:37 -07:00
Joseph Myers
f2da779309 Integrate errno testing better in libm-test.inc. 2013-04-29 20:36:48 +00:00
Andreas Jaeger
c3ed8088e4 BZ#15084: Apparent typos in strings in res_debug.c
[BZ #15084]
	* resolv/res_debug.c (p_option): Fix strings for RES_USEBSTRING
	and RES_USEVC.
2013-04-29 21:17:30 +02:00
Andreas Jaeger
f1a24198af BZ#15085: Fix comments/strings for RES_NOCHECKNAME
[BZ #15085]
	* resolv/resolv.h (RES_NOCHECKNAME): Mark as unimplemented.
	* resolv/res_debug.c (p_option): Mark RES_NOCHECKNAME as
	unimplemented.
2013-04-29 21:11:13 +02:00
Andreas Jaeger
9ce3b2cbd2 BZ#15380: Fix initstate error return
[BZ #15380]
	* stdlib/random.c (__initstate): Return NULL if
	__initstate fails.
2013-04-29 21:02:16 +02:00
Andreas Jaeger
b1a36ceb3b BZ#15086: Fix res_debug printing of options
[BZ# 15086]
	* resolv/res_debug.c (p_option): Handle RES_NOALIASES,
	RES_KEEPTSIG, RES_BLAST, RES_NOIP6DOTINT, RES_SNGLKUP,
	RES_SNGLKUPREOP.
2013-04-29 21:00:57 +02:00
Adhemerval Zanella
7e7b6f36a9 Update powerpc libm-test ULPs 2013-04-29 12:10:03 -05:00
Joseph Myers
4d14f4499d Add missing semicolons to libm-test.inc tests. 2013-04-29 13:48:19 +00:00
Joseph Myers
5b4217d71f Fix catan, catanh spurious overflows (bug 15409). 2013-04-27 14:57:41 +00:00
Nik Kalach
d5ba74f764 Fix ia_FR postal format
2013-04-27  Nik Kalach  <nikka@fedoraproject.org>

	[BZ #15221]
	* locales/ia_FR: Fix postal_fmt definition.
2013-04-27 16:54:47 +02:00
Andreas Jaeger
4220c3ef77 Fix guards for qecvt
[BZ #15007]
	* stdlib/stdlib.h: Update guards for qecvt.
	* stdlib/bits/stdlib-ldbl.h: Sync guards for qecvt etc with
	<stdlib.h>.
2013-04-27 16:21:53 +02:00
Allan McRae
4721b2d1ca Update i386 libm-test ULPs 2013-04-27 15:13:12 +10:00
Joseph Myers
9457fd952c Fix catan, catanh missing underflows (bug 15406). 2013-04-26 19:26:22 +00:00
Joseph Myers
f0302940e7 Fix csin, csinh, ccos, ccosh missing underflows (bug 15405). 2013-04-26 19:25:19 +00:00
Adhemerval Zanella
aa630f590c PowerPC: modf optimization fix
This patch fix the 3c0265394d commits
by correctly setting minimum architecture for modf PPC optimization
to power5+ instead of power5 (since only on power5+ round/ceil will
be inline to inline assembly).
2013-04-26 13:00:56 -05:00
Markus Trippelsdorf
1b8359836d Update x86_64 ULPs
2013-04-26  Markus Trippelsdorf  <markus@trippelsdorf.de>

	* sysdeps/x86_64/fpu/libm-test-ulps: Update.
2013-04-26 09:30:46 +02:00
Joseph Myers
804f604cdd Add missing bug numbers to NEWS. 2013-04-25 19:34:30 +00:00
Joseph Myers
73709b2611 Move x86_64-specific audit tests to sysdeps/x86_64/. 2013-04-25 19:23:11 +00:00
Paul Pluzhnikov
1ef74943ce Get rid of __STDC_FORMAT_MACROS, __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS 2013-04-25 11:08:31 -07:00
Maciej W. Rozycki
ae9552cf7b Declare __ehdr_start with hidden visibility.
This avoids a linker bug triggering for MIPS SVR4 binaries:

http://sourceware.org/bugzilla/show_bug.cgi?id=15365

and regardless serves as a documentation of intent.
2013-04-25 16:14:49 +01:00
Maciej W. Rozycki
93fd48c5f6 soft-fp: s/sNAN/NAN/ -- no sNaNs are ever produced. 2013-04-25 16:02:26 +01:00
Carlos O'Donell
418601aa84 math: Use accurate answers for cos and sincos.
Use the most accurate hex literals possible for the answers to the
cos and sincos tests that vary according to the error in the rounding
of PI/2.

---

2013-04-24  Carlos O'Donell  <carlos@redhat.com>

	* math/libm-test.inc (cos_test): Use accurate hex constants.
	(sincost_test): Likewise.
2013-04-24 16:29:33 -04:00
Joseph Myers
5e22180060 Add catan, catanh tests at +/- 1 and +/- i. 2013-04-24 20:14:15 +00:00
Joseph Myers
77f143fdb4 Use suffixed floating-point constants in float and long double catan/catanh. 2013-04-24 18:59:37 +00:00
Joseph Myers
2f38fbfe09 Fix catan, catanh inaccuracy through use of log (bug 15394). 2013-04-24 18:49:13 +00:00
Siddhesh Poyarekar
45d69176e8 Mention files in which fast/slow paths of math functions are implemented 2013-04-24 14:07:40 +05:30
Roland McGrath
d6f9bc519d Fix name space use in last commit. 2013-04-23 15:57:25 -07:00
Roland McGrath
87f51853ce Add generic POSIX implementation of C11 timespec_get. 2013-04-23 15:28:59 -07:00
Adhemerval Zanella
3c0265394d PowerPC: modf optimization
This patch implements modf/modff optimization for POWER by focus
on FP operations instead of relying in integer ones.
2013-04-23 13:38:52 -05:00
Siddhesh Poyarekar
ff491d14a2 Consistently use ISSPACE to check for whitespace
Resolves #14888.

This only really manifests itself when there are no spaces between
format specifiers, which is not allowed by POSIX, but is allowed by
the glibc implementation.
2013-04-23 15:32:42 +05:30
Andreas Schwab
7ed3f4e859 Remove non-standard initialisation of flexible array member
This avoids GCC bug 28865.
2013-04-23 10:31:03 +02:00
Heiko Carstens
5c95f7b66b S/390: Change struct statfs[64] member types to unsigned values
Kay Sievers reported that coreutils' stat tool has a problem with
s390's statfs[64] definition:

> The definition of struct statfs::f_type needs a fix. s390 is the only
> architecture in the kernel that uses an int and expects magic
> constants lager than INT_MAX to fit into.
>
> A fix is needed to make Fedora boot on s390, it currently fails to do
> so. Userspace does not want to add code to paper-over this issue.

[...]

> Even coreutils cannot handle it:
>   #define RAMFS_MAGIC  0x858458f6
>   # stat -f -c%t /
>   ffffffff858458f6
>
>   #define BTRFS_SUPER_MAGIC 0x9123683E
>   # stat -f -c%t /mnt
>   ffffffff9123683e

The bug is caused by an implicit sign extension within the stat tool:

out_uint_x (pformat, prefix_len, statfsbuf->f_type);

where the format finally will be "%lx".
A similar problem can be found in the 'tail' tool.
s390 is the only architecture which has an int type f_type member in
struct statfs[64]. Other architectures have either unsigned ints or
long values, so that the problem doesn't occur there.

Therefore change the type of the f_type member to unsigned int, so
that we get zero extension instead sign extension when assignment to
a long value happens.

Reported-by: Kay Sievers <kay@vrfy.org>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
2013-04-23 08:59:35 +02:00