#include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
// FIXME
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
#define LDBL_INFNAN_EXP (LDBL_MAX_EXP * 2 - 1)
float nexttowardf(float x, long double y)
return x;
}
if (hx >= 0 ^ x < y) /* x -= ulp */
- hx -= 1;
+ hx--;
else /* x += ulp */
- hx += 1;
+ hx++;
ix = hx & 0x7f800000;
if (ix >= 0x7f800000) /* overflow */
return x+x;