glibc/sysdeps/powerpc
Joseph Myers b4d80349bb Do not raise "inexact" from powerpc64 ceil, floor, trunc (bug 15479).
Continuing fixes for ceil, floor and trunc functions not to raise the
"inexact" exception, this patch fixes the versions used on older
powerpc64 processors.  As was done with the round implementations some
time ago, the save of floating-point state is moved after the first
floating-point operation on the input to ensure that any "invalid"
exception from signaling NaN input is included in the saved state, and
then the whole state gets restored rather than just the rounding mode.

This has no effect on configurations using the power5+ code, since
such processors can do these operations with a single instruction (and
those instructions do not set "inexact", so are correct for TS 18661-1
semantics).

Tested for powerpc64.

	[BZ #15479]
	* sysdeps/powerpc/powerpc64/fpu/s_ceil.S (__ceil): Move save of
	floating-point state after first floating-point operation on
	input.  Restore full floating-point state instead of just rounding
	mode.
	* sysdeps/powerpc/powerpc64/fpu/s_ceilf.S (__ceilf): Likewise.
	* sysdeps/powerpc/powerpc64/fpu/s_floor.S (__floor): Likewise.
	* sysdeps/powerpc/powerpc64/fpu/s_floorf.S (__floorf): Likewise.
	* sysdeps/powerpc/powerpc64/fpu/s_trunc.S (__trunc): Likewise.
	* sysdeps/powerpc/powerpc64/fpu/s_truncf.S (__truncf): Likewise.
2016-05-25 17:42:22 +00:00
..
bits powerpc: Remove uses of operand modifier (%s) in inline asm 2016-03-08 15:30:28 -03:00
fpu Fix ldbl-128ibm nearbyintl in non-default rounding modes (bug 19790). 2016-03-09 00:30:59 +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 Do not raise "inexact" from powerpc32 ceil, floor, trunc (bug 15479). 2016-05-25 16:53:23 +00:00
powerpc64 Do not raise "inexact" from powerpc64 ceil, floor, trunc (bug 15479). 2016-05-25 17:42:22 +00:00
soft-fp soft-fp: support after-rounding tininess detection. 2014-02-12 18:27:12 +00:00
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: Fix dl-procinfo HWCAP 2016-03-08 15:30:06 -03:00
dl-procinfo.h powerpc: Fix dl-procinfo HWCAP 2016-03-08 15:30:06 -03: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 Move sysdeps/powerpc/elf files 2012-03-28 09:25:31 +02:00
Implies PowerPC: unify math_ldbl.h implementations 2013-03-08 11:07:15 -03:00
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 powerpc: strcasestr optmization for power8 2016-04-22 19:23:13 +05:30
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 Move base_machine and machine settings from configure.ac to sysdeps preconfigure fragments. 2014-06-25 17:52:56 +00:00
rtld-global-offsets.sym PowerPC: Define AT_HWCAP2 bits and AT_HWCAP2 handling for POWER8. 2013-06-28 16:52:49 -05:00
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 Split tls-macros.h in sysdeps directories. 2012-07-19 17:04:04 -03:00
tst-stack-align.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
tst-tlsopt-powerpc.c powerpc __tls_get_addr call optimization 2015-03-25 15:53:47 +10:30
Versions powerpc: Add hwcap/hwcap2/platform data to TCB. 2015-12-03 13:56:13 -02:00