r238584 - in /trunk: gcc/testsuite/gcc.dg/pr598...

ramana@gcc.gnu.org ramana@gcc.gnu.org
Thu Jul 21 08:27:00 GMT 2016


Author: ramana
Date: Thu Jul 21 08:27:47 2016
New Revision: 238584

URL: https://gcc.gnu.org/viewcvs?rev=238584&root=gcc&view=rev
Log:
[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.

Added:
    trunk/gcc/testsuite/gcc.dg/pr59833.c
Modified:
    trunk/libgcc/ChangeLog
    trunk/libgcc/config/arm/ieee754-df.S



More information about the Gcc-cvs mailing list