| Index: runtime/vm/intermediate_language_x64.cc | 
| diff --git a/runtime/vm/intermediate_language_x64.cc b/runtime/vm/intermediate_language_x64.cc | 
| index 78b9a3f5117a40062782f88fb359b64869c1b375..8345f6f6ec88bf90a449ff4c105a5dfa06a6d573 100644 | 
| --- a/runtime/vm/intermediate_language_x64.cc | 
| +++ b/runtime/vm/intermediate_language_x64.cc | 
| @@ -5456,23 +5456,18 @@ void PolymorphicInstanceCallInstr::EmitNativeCode(FlowGraphCompiler* compiler) { | 
| return; | 
| } | 
|  | 
| -  // Load receiver into RAX. | 
| -  __ movq(RAX, | 
| -      Address(RSP, (instance_call()->ArgumentCount() - 1) * kWordSize)); | 
| - | 
| Label* deopt = compiler->AddDeoptStub( | 
| deopt_id(), ICData::kDeoptPolymorphicInstanceCallTestFail); | 
| -  LoadValueCid(compiler, RDI, RAX, | 
| -               (ic_data().GetReceiverClassIdAt(0) == kSmiCid) ? NULL : deopt); | 
| - | 
| +  Label ok; | 
| compiler->EmitTestAndCall(ic_data(), | 
| -                            RDI,  // Class id register. | 
| instance_call()->ArgumentCount(), | 
| instance_call()->argument_names(), | 
| deopt, | 
| +                            &ok, | 
| deopt_id(), | 
| instance_call()->token_pos(), | 
| locs()); | 
| +  __ Bind(&ok); | 
| } | 
|  | 
|  | 
|  |