#ifdef USE_LONG_DOUBLE
# error Long double not supported.
#elif ! defined USE_FLOAT
-# include "isnand.h"
+# include "isnand-nolibm.h"
# define ISNAN isnand
# define FUNCTION "round"
# define DOUBLE_UINT uint64_t
# define NUM_HIGHBITS 13
# define NUM_LOWBITS 4
#else /* defined USE_FLOAT */
-# include "isnanf.h"
+# include "isnanf-nolibm.h"
# define ISNAN isnanf
# define FUNCTION "roundf"
# define DOUBLE_UINT uint32_t
else
{
fprintf (stderr, "%s: "FUNCTION"(%g(%a)) = %g(%a) or %g(%a)?\n",
- message, x, x, y0, y0, y1, y1);
+ message, x, x, y0, y0, y1, y1);
return false;
}
}
for (highbits = 0; highbits < (1 << NUM_HIGHBITS); highbits++)
for (lowbits = 0; lowbits < (1 << NUM_LOWBITS); lowbits++)
{
- /* Combine highbits and lowbits into a floating-point number,
- sign-extending the lowbits to DOUBLE_BITS-NUM_HIGHBITS bits. */
- union { DOUBLE f; DOUBLE_UINT i; } janus;
- verify (sizeof janus.f == sizeof janus.i);
- janus.i = lowbits | (highbits << (DOUBLE_BITS - NUM_HIGHBITS));
- if (lowbits >> (NUM_LOWBITS - 1))
- janus.i |= ((DOUBLE_UINT) -1
- >> (NUM_LOWBITS + NUM_HIGHBITS)
- << NUM_LOWBITS);
- if (!check (janus.f))
- error = true;
+ /* Combine highbits and lowbits into a floating-point number,
+ sign-extending the lowbits to DOUBLE_BITS-NUM_HIGHBITS bits. */
+ union { DOUBLE f; DOUBLE_UINT i; } janus;
+ verify (sizeof janus.f == sizeof janus.i);
+ janus.i = lowbits | (highbits << (DOUBLE_BITS - NUM_HIGHBITS));
+ if (lowbits >> (NUM_LOWBITS - 1))
+ janus.i |= ((DOUBLE_UINT) -1
+ >> (NUM_LOWBITS + NUM_HIGHBITS)
+ << NUM_LOWBITS);
+ if (!check (janus.f))
+ error = true;
}
return (error ? 1 : 0);
}