glibc/sysdeps/powerpc
Joseph Myers 2e3d0de31f Fix ulps regeneration for *-finite tests.
On running tests after from-scratch ulps regeneration, I found that
some libm tests failed with ulps in excess of those recorded in the
from-scratch regeneration, which should never happen unless those ulps
exceed the limit on ulps that can go in libm-test-ulps files.

Failure: Test: atan2_upward (inf, -inf)
Result:
 is:          2.35619498e+00   0x1.2d97ccp+1
 should be:   2.35619450e+00   0x1.2d97c8p+1
 difference:  4.76837159e-07   0x1.000000p-21
 ulp       :  2.0000
 max.ulp   :  1.0000
Maximal error of `atan2_upward'
 is      : 2 ulp
 accepted: 1 ulp
Failure: Test: carg_upward (-inf + inf i)
Result:
 is:          2.35619498e+00   0x1.2d97ccp+1
 should be:   2.35619450e+00   0x1.2d97c8p+1
 difference:  4.76837159e-07   0x1.000000p-21
 ulp       :  2.0000
 max.ulp   :  1.0000
Maximal error of `carg_upward'
 is      : 2 ulp
 accepted: 1 ulp

The problem comes from the addition of tests for the finite-math-only
versions of libm functions.  Those tests share ulps with the default
function variants.  make regen-ulps runs the default tests before the
finite-math-only tests, concatenating the resulting ulps before
feeding them to gen-libm-test.pl to generate a new libm-test-ulps
file.  But gen-libm-test.pl always takes the last ulps value given for
any (function, type) pair.  So, if the largest ulps for a function
come from non-finite inputs, a from-scratch regeneration loses those
ulps.

This patch fixes gen-libm-test.pl, in the case where there are
multiple ulps values for a (function, type) pair - which can only
happen as part of a regeneration - to take the largest ulps value
rather than the last one.

Tested for ARM / MIPS / powerpc-nofpu.

	* math/gen-libm-test.pl (parse_ulps): Do not reduce
	already-recorded ulps.
	* sysdeps/arm/libm-test-ulps: Regenerated.
	* sysdeps/mips/mips32/libm-test-ulps: Likewise.
	* sysdeps/mips/mips64/libm-test-ulps: Likewise.
	* sysdeps/powerpc/nofpu/libm-test-ulps: Likewise.
2016-01-19 21:42:58 +00:00
..
bits powerpc: Add hwcap2 bits for POWER9. 2016-01-08 11:19:40 -02:00
fpu Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
nofpu Fix ulps regeneration for *-finite tests. 2016-01-19 21:42:58 +00:00
nptl powerpc: Enforce compiler barriers on hardware transactions 2016-01-08 17:47:33 -02:00
power4 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
power5+/fpu Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
power6 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
power7/fpu Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
powerpc32 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
powerpc64 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
soft-fp
sys/platform Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
abort-instr.h
atomic-machine.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
dl-procinfo.c powerpc: Add hwcap2 bits for POWER9. 2016-01-08 11:19:40 -02:00
dl-procinfo.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
dl-tls.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
dl-tls.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
ffs.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
fpu_control.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
gccframe.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
hwcapinfo.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
hwcapinfo.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
ifunc-sel.h
Implies
jmpbuf-offsets.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
ldsodefs.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
libc-tls.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
locale-defines.sym
longjmp.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
machine-gmon.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
Makefile powerpc: Add hwcap/hwcap2/platform data to TCB. 2015-12-03 13:56:13 -02:00
math-tests.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
memusage.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
mp_clz_tab.c
novmx-longjmp.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
novmx-sigjmp.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
novmxsetjmp.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
preconfigure
rtld-global-offsets.sym
sched_cpucount.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
sigjmp.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
sotruss-lib.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
stackinfo.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
strcat.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
sysdep.h powerpc: Enforce compiler barriers on hardware transactions 2016-01-08 17:47:33 -02:00
test-arith.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
test-arithf.c
test-get_hwcap-static.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
test-get_hwcap.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
test-gettimebase.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
tls-macros.h
tst-stack-align.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
tst-tlsopt-powerpc.c
Versions powerpc: Add hwcap/hwcap2/platform data to TCB. 2015-12-03 13:56:13 -02:00