Commit Graph

25677 Commits

Author SHA1 Message Date
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
Jan-Benedict Glaw d34c915826 Fix getent to call endspent rather than endpwent for shadow database. 2013-04-22 10:44:31 -07:00
Siddhesh Poyarekar da1304bcc8 Consolidate pthread_attr value validation
Define inline functions that wrap around validation for each of the
pthread attributes to reduce duplication in code.
2013-04-22 10:28:31 +05:30
Siddhesh Poyarekar 2169712d9c Minor cleanup in getaddrinfo
Replace repeated computations of alloca size with a local variable
that stores the computed value.
2013-04-22 10:24:00 +05:30
David S. Miller 29c5de9984 Russian translations update.
* po/ru.po: Update Russion translation from translation project.
2013-04-21 15:36:14 -04:00
Roland McGrath 7214d558d3 ARM: Macroize assembly use of EABI unwind directives. 2013-04-19 11:33:01 -07:00
Adam Conrad ccdad15df5 Remove __wur from setfsuid and setfsgid. 2013-04-18 23:58:16 -06:00
David Holsgrove 7756ba9d6d MicroBlaze Port
Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
2013-04-18 11:00:13 +10:00
Carlos O'Donell 5c5b07da03 Update ChangeLog.
Update ChangeLog for 0f122b8d12.
2013-04-17 17:17:59 -07:00
Carlos O'Donell 0f122b8d12 Configuring for i386 is no longer supported.
We no longer support configuring for i386, nor do we
elide such a configuration to i686. Configuring with
i386-* is a failure, and we provide an example of
how to fix that.

---

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

	* configure.in: Remove i386 configure warning. Remove i386 case.
	* configure: Regenerate.
	* sysdeps/i386/configure.in: Raise error if config_machine is i386.
	Add example to error message.
	* sysdeps/i386/configure: Regenerate.
2013-04-17 17:13:20 -07:00
Siddhesh Poyarekar 037714dd49 Add benchmark inputs for cos and tan 2013-04-17 17:45:55 +05:30
Roland McGrath e913141d5f Don't test O_RDONLY case in tst-aio7. 2013-04-16 12:11:26 -07:00
Siddhesh Poyarekar 4856bcd2df Define NOT_IN_libc when compiling benchmark programs 2013-04-16 18:34:03 +05:30
Siddhesh Poyarekar a296407432 Add target bench-clean 2013-04-16 14:07:21 +05:30
David Holsgrove 9fbf9acabe Adding MicroBlaze support to elf/elf.h
Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2013-04-16 09:48:08 +10:00
Thomas Schwinge 207d1e2a6c Fix coding-style violation.
Introduced in commit ee091edf1a.
2013-04-15 22:11:30 +02:00