qemu/fpu/softfloat-specialize.h
/*----------------------------------------------------------------------------
| Returns 1 if the quadruple-precision floating-point value `a' is a
| signaling NaN; otherwise returns 0.
*----------------------------------------------------------------------------*/
| Returns 1 if the quadruple-precision floating-point value `a' is a
| signaling NaN; otherwise returns 0.
| Returns 1 if the quadruple - precision floating - point value ` a ' is a | signaling NaN ; otherwise returns 0 .
int float128_is_signaling_nan(float128 a, float_status *status)
{
#ifdef NO_SIGNALING_NANS
    return 0;
#else
    if (snan_bit_is_one(status)) {
        return ((a.high << 1) >= 0xFFFF000000000000ULL)
            && (a.low || (a.high & 0x0000FFFFFFFFFFFFULL));
    } else {
        return (((a.high >> 47) & 0xFFFF) == 0xFFFE)
            && (a.low || (a.high & LIT64(0x00007FFFFFFFFFFF)));
    }
#endif
}
int float128_is_signaling_nan ( float128 a , float_status * status ) { #ifdef NO_SIGNALING_NANS return 0 ; #else if ( snan_bit_is_one ( status ) ) { return ( ( a . high << 1 ) >= 0xFFFF000000000000ULL ) && ( a . low || ( a . high & 0x0000FFFFFFFFFFFFULL ) ) ; } else { return ( ( ( a . high >> 47 ) & 0xFFFF ) == 0xFFFE ) && ( a . low || ( a . high & LIT64 ( 0x00007FFFFFFFFFFF ) ) ) ; } #endif }
| Returns 1 if the quadruple-precision floating-point value `a' is a
| signaling NaN; otherwise returns 0.
| Returns 1 if the quadruple - precision floating - point value ` a ' is a | signaling NaN ; otherwise returns 0 .