| Index: runtime/vm/flow_graph_compiler_x64.cc
|
| diff --git a/runtime/vm/flow_graph_compiler_x64.cc b/runtime/vm/flow_graph_compiler_x64.cc
|
| index ea6d34402171f47bb5703d237c5f6efbe47880b2..fa6cd0761fe5c3d0386cfc68e2c9c798cdf596b9 100644
|
| --- a/runtime/vm/flow_graph_compiler_x64.cc
|
| +++ b/runtime/vm/flow_graph_compiler_x64.cc
|
| @@ -1356,7 +1356,8 @@ Condition FlowGraphCompiler::EmitEqualityRegConstCompare(
|
| Register reg,
|
| const Object& obj,
|
| bool needs_number_check,
|
| - TokenPosition token_pos) {
|
| + TokenPosition token_pos,
|
| + intptr_t deopt_id) {
|
| ASSERT(!needs_number_check ||
|
| (!obj.IsMint() && !obj.IsDouble() && !obj.IsBigint()));
|
|
|
| @@ -1374,10 +1375,7 @@ Condition FlowGraphCompiler::EmitEqualityRegConstCompare(
|
| } else {
|
| __ CallPatchable(*StubCode::UnoptimizedIdenticalWithNumberCheck_entry());
|
| }
|
| - if (token_pos.IsReal()) {
|
| - AddCurrentDescriptor(RawPcDescriptors::kRuntimeCall, Thread::kNoDeoptId,
|
| - token_pos);
|
| - }
|
| + AddCurrentDescriptor(RawPcDescriptors::kRuntimeCall, deopt_id, token_pos);
|
| // Stub returns result in flags (result of a cmpq, we need ZF computed).
|
| __ popq(reg); // Discard constant.
|
| __ popq(reg); // Restore 'reg'.
|
| @@ -1388,11 +1386,11 @@ Condition FlowGraphCompiler::EmitEqualityRegConstCompare(
|
| }
|
|
|
|
|
| -Condition FlowGraphCompiler::EmitEqualityRegRegCompare(
|
| - Register left,
|
| - Register right,
|
| - bool needs_number_check,
|
| - TokenPosition token_pos) {
|
| +Condition FlowGraphCompiler::EmitEqualityRegRegCompare(Register left,
|
| + Register right,
|
| + bool needs_number_check,
|
| + TokenPosition token_pos,
|
| + intptr_t deopt_id) {
|
| if (needs_number_check) {
|
| __ pushq(left);
|
| __ pushq(right);
|
| @@ -1401,10 +1399,7 @@ Condition FlowGraphCompiler::EmitEqualityRegRegCompare(
|
| } else {
|
| __ CallPatchable(*StubCode::UnoptimizedIdenticalWithNumberCheck_entry());
|
| }
|
| - if (token_pos.IsReal()) {
|
| - AddCurrentDescriptor(RawPcDescriptors::kRuntimeCall, Thread::kNoDeoptId,
|
| - token_pos);
|
| - }
|
| + AddCurrentDescriptor(RawPcDescriptors::kRuntimeCall, deopt_id, token_pos);
|
| // Stub returns result in flags (result of a cmpq, we need ZF computed).
|
| __ popq(right);
|
| __ popq(left);
|
|
|