#include "bits.h"
#include "buf.h"
+#include "maths.h"
/*----- Formatting primitives ---------------------------------------------*/
/* Some machinery before we start. */
-#ifdef isnan
-# define NANP(x) isnan(x)
-#else
-# define NANP(x) (!((x) == (x)))
-#endif
-
-#ifdef isinf
-# define INFP(x) isinf(x)
-#else
-# define INFP(x) ((x) > DBL_MAX || (x) < -DBL_MAX)
-#endif
-
-#ifdef signbit
-# define NEGP(x) signbit(x)
-#else
-# define NEGP(x) ((x) < 0) /* incorrect for negative zero! */
-#endif
-
if (NANP(x)) {
/* A NaN. */
hi = 0x7ff80000; lo = 0;
/* Convert to external format and go home. */
SET64(k, hi, lo); return (k);
-
-#undef NANP
-#undef INFP
-#undef NEGP
}
/* --- @k64_to_f64@ --- *