summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/parsing.h4
-rw-r--r--src/wasm-interpreter.h4
-rw-r--r--src/wasm.h20
3 files changed, 14 insertions, 14 deletions
diff --git a/src/parsing.h b/src/parsing.h
index ed2f65b59..935750537 100644
--- a/src/parsing.h
+++ b/src/parsing.h
@@ -79,7 +79,7 @@ Expression* parseConst(cashew::IString s, WasmType type, MixedArena& allocator)
pattern = 0x7fc00000U;
}
if (negative) pattern |= 0x80000000U;
- if (!isnan(bit_cast<float>(pattern))) pattern |= 1U;
+ if (!std::isnan(bit_cast<float>(pattern))) pattern |= 1U;
ret->value = Literal(pattern).castToF32();
break;
}
@@ -93,7 +93,7 @@ Expression* parseConst(cashew::IString s, WasmType type, MixedArena& allocator)
pattern = 0x7ff8000000000000UL;
}
if (negative) pattern |= 0x8000000000000000ULL;
- if (!isnan(bit_cast<double>(pattern))) pattern |= 1ULL;
+ if (!std::isnan(bit_cast<double>(pattern))) pattern |= 1ULL;
ret->value = Literal(pattern).castToF64();
break;
}
diff --git a/src/wasm-interpreter.h b/src/wasm-interpreter.h
index e7a5d6d14..4af410de1 100644
--- a/src/wasm-interpreter.h
+++ b/src/wasm-interpreter.h
@@ -636,7 +636,7 @@ private:
Literal truncSFloat(Unary* curr, Literal value) {
double val = value.getFloat();
- if (isnan(val)) trap("truncSFloat of nan");
+ if (std::isnan(val)) trap("truncSFloat of nan");
if (curr->type == i32) {
if (val > (double)std::numeric_limits<int32_t>::max() || val < (double)std::numeric_limits<int32_t>::min()) trap("i32.truncSFloat overflow");
return Literal(int32_t(val));
@@ -649,7 +649,7 @@ private:
Literal truncUFloat(Unary* curr, Literal value) {
double val = value.getFloat();
- if (isnan(val)) trap("truncUFloat of nan");
+ if (std::isnan(val)) trap("truncUFloat of nan");
if (curr->type == i32) {
if (val > (double)std::numeric_limits<uint32_t>::max() || val <= (double)-1) trap("i32.truncUFloat overflow");
return Literal(uint32_t(val));
diff --git a/src/wasm.h b/src/wasm.h
index 7422dd85d..af767b688 100644
--- a/src/wasm.h
+++ b/src/wasm.h
@@ -233,7 +233,7 @@ public:
}
static void printFloat(std::ostream &o, float f) {
- if (isnan(f)) {
+ if (std::isnan(f)) {
const char *sign = std::signbit(f) ? "-" : "";
o << sign << "nan";
if (uint32_t payload = ~0xff800000u & bit_cast<uint32_t>(f)) {
@@ -249,7 +249,7 @@ public:
o << "-0";
return;
}
- if (isnan(d)) {
+ if (std::isnan(d)) {
const char *sign = std::signbit(d) ? "-" : "";
o << sign << "nan";
if (uint64_t payload = ~0xfff0000000000000ull & bit_cast<uint64_t>(d)) {
@@ -628,8 +628,8 @@ public:
auto l = getf32(), r = other.getf32();
if (l == r && l == 0) return Literal(std::signbit(l) ? l : r);
auto result = std::min(l, r);
- bool lnan = isnan(l), rnan = isnan(r);
- if (!isnan(result) && !lnan && !rnan) return Literal(result);
+ bool lnan = std::isnan(l), rnan = std::isnan(r);
+ if (!std::isnan(result) && !lnan && !rnan) return Literal(result);
if (!lnan && !rnan) return Literal((int32_t)0x7fc00000).castToF32();
return Literal(lnan ? l : r).castToI32().or_(Literal(0xc00000)).castToF32();
}
@@ -637,8 +637,8 @@ public:
auto l = getf64(), r = other.getf64();
if (l == r && l == 0) return Literal(std::signbit(l) ? l : r);
auto result = std::min(l, r);
- bool lnan = isnan(l), rnan = isnan(r);
- if (!isnan(result) && !lnan && !rnan) return Literal(result);
+ bool lnan = std::isnan(l), rnan = std::isnan(r);
+ if (!std::isnan(result) && !lnan && !rnan) return Literal(result);
if (!lnan && !rnan) return Literal((int64_t)0x7ff8000000000000LL).castToF64();
return Literal(lnan ? l : r).castToI64().or_(Literal(int64_t(0x8000000000000LL))).castToF64();
}
@@ -651,8 +651,8 @@ public:
auto l = getf32(), r = other.getf32();
if (l == r && l == 0) return Literal(std::signbit(l) ? r : l);
auto result = std::max(l, r);
- bool lnan = isnan(l), rnan = isnan(r);
- if (!isnan(result) && !lnan && !rnan) return Literal(result);
+ bool lnan = std::isnan(l), rnan = std::isnan(r);
+ if (!std::isnan(result) && !lnan && !rnan) return Literal(result);
if (!lnan && !rnan) return Literal((int32_t)0x7fc00000).castToF32();
return Literal(lnan ? l : r).castToI32().or_(Literal(0xc00000)).castToF32();
}
@@ -660,8 +660,8 @@ public:
auto l = getf64(), r = other.getf64();
if (l == r && l == 0) return Literal(std::signbit(l) ? r : l);
auto result = std::max(l, r);
- bool lnan = isnan(l), rnan = isnan(r);
- if (!isnan(result) && !lnan && !rnan) return Literal(result);
+ bool lnan = std::isnan(l), rnan = std::isnan(r);
+ if (!std::isnan(result) && !lnan && !rnan) return Literal(result);
if (!lnan && !rnan) return Literal((int64_t)0x7ff8000000000000LL).castToF64();
return Literal(lnan ? l : r).castToI64().or_(Literal(int64_t(0x8000000000000LL))).castToF64();
}