38 using namespace v8::internal;
77 CHECK_EQ(0x12 - 0x3FF - 52 - 11, diy_fp.
e());
83 CHECK_EQ(-0x3FF - 52 + 1 - 63, diy_fp.
e());
89 CHECK_EQ(0x7FE - 0x3FF - 52 - 11, diy_fp.
e());
123 CHECK(!
Double(1.7976931348623157e308).IsSpecial());
124 CHECK(!
Double(-1.7976931348623157e308).IsSpecial());
154 DiyFp boundary_minus;
161 CHECK(diy_fp.
f() - boundary_minus.
f() == boundary_plus.
f() - diy_fp.
f());
162 CHECK((1 << 10) == diy_fp.
f() - boundary_minus.
f());
166 CHECK_EQ(diy_fp.e(), boundary_minus.
e());
170 CHECK_GT(boundary_plus.
f() - diy_fp.f(), diy_fp.f() - boundary_minus.
f());
171 CHECK((1 << 9) == diy_fp.f() - boundary_minus.
f());
172 CHECK((1 << 10) == boundary_plus.
f() - diy_fp.f());
177 CHECK_EQ(diy_fp.e(), boundary_minus.
e());
181 CHECK(diy_fp.f() - boundary_minus.
f() == boundary_plus.
f() - diy_fp.f());
183 CHECK((static_cast<uint64_t>(1) << 62) ==
184 diy_fp.f() - boundary_minus.
f());
190 CHECK_EQ(diy_fp.e(), boundary_minus.
e());
194 CHECK(diy_fp.f() - boundary_minus.
f() == boundary_plus.
f() - diy_fp.f());
195 CHECK((1 << 10) == diy_fp.f() - boundary_minus.
f());
201 CHECK_EQ(diy_fp.e(), boundary_minus.
e());
203 CHECK(diy_fp.f() - boundary_minus.
f() == boundary_plus.
f() - diy_fp.f());
204 CHECK((1 << 11) == diy_fp.f() - boundary_minus.
f());
209 CHECK_EQ(diy_fp.e(), boundary_minus.
e());
213 CHECK(diy_fp.f() - boundary_minus.
f() == boundary_plus.
f() - diy_fp.f());
214 CHECK((1 << 10) == diy_fp.f() - boundary_minus.
f());
#define CHECK_EQ(expected, value)
double NextDouble() const
const LowDwVfpRegister d0
#define V8_2PART_UINT64_C(a, b)
DiyFp AsNormalizedDiyFp() const
const LowDwVfpRegister d2
static double nan_value()
const LowDwVfpRegister d1
void NormalizedBoundaries(DiyFp *out_m_minus, DiyFp *out_m_plus) const