gcc/libgcc/config/arm
Aurelien Jarno a1b01d3403 [ARM] Fix PR target/59833
For Aurelien Jarno <aurelien@aurel32.net>

On ARM soft-float, the float to double conversion doesn't convert a sNaN
to qNaN as the IEEE Std 754 standard mandates:

"Under default exception handling, any operation signaling an invalid
operation exception and for which a floating-point result is to be
delivered shall deliver a quiet NaN."

Given the soft float ARM code ignores exceptions and always provides a
result, a float to double conversion of a signaling NaN should return a
quiet NaN. Fix this in extendsfdf2.

gcc/ChangeLog:

	PR target/59833
	* config/arm/ieee754-df.S (extendsfdf2): Convert sNaN to qNaN.

gcc/testsuite/ChangeLog:

	* gcc.dg/pr59833.c: New testcase.

From-SVN: r238584
2016-07-21 08:27:47 +00:00
..
bpabi-lib.h
bpabi-v6m.S
bpabi.c
bpabi.S
crtfastmath.c
crti.S
crtn.S
fp16.c
freebsd-atomic.c
ieee754-df.S [ARM] Fix PR target/59833 2016-07-21 08:27:47 +00:00
ieee754-sf.S
lib1funcs.S lib1funcs.S: Add new wrapper. 2016-07-11 17:11:31 +00:00
libgcc-bpabi.ver
libunwind.S
linux-atomic-64bit.c
linux-atomic.c
pr-support.c
sfp-machine.h
symbian-lib.h
t-arm
t-bpabi
t-elf
t-freebsd
t-linux
t-linux-eabi
t-netbsd
t-softfp
t-strongarm-elf
t-symbian
t-wince-pe
unaligned-funcs.c
unwind-arm.c
unwind-arm.h