summaryrefslogtreecommitdiff
path: root/src/runtime
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime')
-rw-r--r--src/runtime/c/gu/bits.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/src/runtime/c/gu/bits.c b/src/runtime/c/gu/bits.c
index 9126b0448..398b3fdd5 100644
--- a/src/runtime/c/gu/bits.c
+++ b/src/runtime/c/gu/bits.c
@@ -35,16 +35,7 @@ gu_decode_double(uint64_t u)
double ret;
if (rawexp == 0x7ff) {
- if (mantissa == 0) {
- ret = INFINITY;
- } else {
- // At least glibc supports specifying the
- // mantissa like this.
- int len = snprintf(NULL, 0, "0x%" PRIx64, mantissa);
- char buf[len + 1];
- snprintf(buf, len + 1, "0x%" PRIx64, mantissa);
- ret = nan(buf);
- }
+ ret = (mantissa == 0) ? INFINITY : NAN;
} else {
uint64_t m = rawexp ? 1ULL << 52 | mantissa : mantissa << 1;
ret = ldexp((double) m, rawexp - 1075);