diff --git a/src/common/fp/info.h b/src/common/fp/info.h index 1c4032e0..50a1e81c 100644 --- a/src/common/fp/info.h +++ b/src/common/fp/info.h @@ -32,6 +32,7 @@ struct FPInfo { static constexpr u32 Zero(bool sign) { return sign ? sign_mask : 0; } static constexpr u32 Infinity(bool sign) { return exponent_mask | Zero(sign); } static constexpr u32 MaxNormal(bool sign) { return (exponent_mask - 1) | Zero(sign); } + static constexpr u32 DefaultNaN() { return exponent_mask | (u32(1) << (explicit_mantissa_width - 1)); } }; template<> @@ -53,6 +54,7 @@ struct FPInfo { static constexpr u64 Zero(bool sign) { return sign ? sign_mask : 0; } static constexpr u64 Infinity(bool sign) { return exponent_mask | Zero(sign); } static constexpr u64 MaxNormal(bool sign) { return (exponent_mask - 1) | Zero(sign); } + static constexpr u64 DefaultNaN() { return exponent_mask | (u64(1) << (explicit_mantissa_width - 1)); } }; } // namespace Dynarmic::FP