Checked on x86_64-linux-gnu.
Reviewed-by: Wilco Dijkstra <Wilco.Dijkstra@arm.com>
> UINT64_C (0xfff0000000000000);
}
+/* Get any long double optimization. */
+#include <math_ldbl.h>
+
# if __HAVE_DISTINCT_FLOAT128
# ifdef __USE_EXTERN_INLINES
(d) = se_u.value; \
} while (0)
+extern inline int
+__issignalingl (long double x)
+{
+ uint32_t exi, hxi, lxi;
+ GET_LDOUBLE_WORDS (exi, hxi, lxi, x);
+
+ int ret = ((exi & 0x7fff) && ((hxi & 0x80000000) == 0));
+ hxi ^= 0x40000000;
+ hxi |= (lxi | -lxi) >> 31;
+ return ret || (((exi & 0x7fff) == 0x7fff) && (hxi > 0xc0000000));
+}
+
#endif /* math_ldbl.h */