Signed-off-by: Thomas Schwinge <tho...@codesourcery.com> --- fpu/softfloat-specialize.h | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-)
diff --git fpu/softfloat-specialize.h fpu/softfloat-specialize.h index 518f694..83add1a 100644 --- fpu/softfloat-specialize.h +++ fpu/softfloat-specialize.h @@ -934,15 +934,14 @@ static commonNaNT floatx80ToCommonNaN( floatx80 a STATUS_PARAM) commonNaNT z; if ( floatx80_is_signaling_nan( a ) ) float_raise( float_flag_invalid STATUS_VAR); - if ( a.low >> 63 ) { - z.sign = a.high >> 15; - z.low = 0; - z.high = a.low << 1; - } else { - z.sign = floatx80_default_nan_high >> 15; - z.low = 0; - z.high = floatx80_default_nan_low << 1; + /* Replace a Pseudo NaN with a default NaN. */ + if (!(a.low >> 63)) { + a.low = floatx80_default_nan_low; + a.high = floatx80_default_nan_high; } + z.sign = a.high >> 15; + z.low = 0; + z.high = a.low << 1; return z; } -- 1.7.10.4