| Index: runtime/vm/intermediate_language_x64.cc
|
| diff --git a/runtime/vm/intermediate_language_x64.cc b/runtime/vm/intermediate_language_x64.cc
|
| index 67d6d8e8283740354ee08edf4e58fd9d10324049..2c1d14ca9ab5aba5dea805f715e8d1240bf182b3 100644
|
| --- a/runtime/vm/intermediate_language_x64.cc
|
| +++ b/runtime/vm/intermediate_language_x64.cc
|
| @@ -2487,7 +2487,7 @@ static void EmitJavascriptOverflowCheck(FlowGraphCompiler* compiler,
|
| Range* range,
|
| Label* overflow,
|
| Register result) {
|
| - if (!range->IsWithin(-0x20000000000000LL, 0x20000000000000LL)) {
|
| + if (!RangeUtils::IsWithin(range, -0x20000000000000LL, 0x20000000000000LL)) {
|
| ASSERT(overflow != NULL);
|
| // TODO(zra): This can be tightened to one compare/branch using:
|
| // overflow = (result + 2^52) > 2^53 with an unsigned comparison.
|
| @@ -2561,8 +2561,7 @@ static void EmitSmiShiftLeft(FlowGraphCompiler* compiler,
|
| }
|
| const intptr_t max_right = kSmiBits - Utils::HighestBit(left_int);
|
| const bool right_needs_check =
|
| - (right_range == NULL) ||
|
| - !right_range->IsWithin(0, max_right - 1);
|
| + !RangeUtils::IsWithin(right_range, 0, max_right - 1);
|
| if (right_needs_check) {
|
| __ CompareImmediate(right,
|
| Immediate(reinterpret_cast<int64_t>(Smi::New(max_right))), PP);
|
| @@ -2578,7 +2577,7 @@ static void EmitSmiShiftLeft(FlowGraphCompiler* compiler,
|
| }
|
|
|
| const bool right_needs_check =
|
| - (right_range == NULL) || !right_range->IsWithin(0, (Smi::kBits - 1));
|
| + !RangeUtils::IsWithin(right_range, 0, (Smi::kBits - 1));
|
| ASSERT(right == RCX); // Count must be in RCX
|
| if (is_truncating) {
|
| if (right_needs_check) {
|
|
|