| Index: src/ia32/lithium-ia32.cc | 
| diff --git a/src/ia32/lithium-ia32.cc b/src/ia32/lithium-ia32.cc | 
| index c156b61f1b74fd74d6ec0b1f8af6a7a0925098b2..67b4e0c8f65879786d68a12dcbf7df27598dd884 100644 | 
| --- a/src/ia32/lithium-ia32.cc | 
| +++ b/src/ia32/lithium-ia32.cc | 
| @@ -1139,6 +1139,19 @@ LInstruction* LChunkBuilder::DoCallWithDescriptor( | 
| } | 
|  | 
|  | 
| +LInstruction* LChunkBuilder::DoTailCallThroughMegamorphicCache( | 
| +    HTailCallThroughMegamorphicCache* instr) { | 
| +  LOperand* context = UseFixed(instr->context(), esi); | 
| +  LOperand* receiver_register = | 
| +      UseFixed(instr->receiver(), LoadDescriptor::ReceiverRegister()); | 
| +  LOperand* name_register = | 
| +      UseFixed(instr->name(), LoadDescriptor::NameRegister()); | 
| +  // Not marked as call. It can't deoptimize, and it never returns. | 
| +  return new (zone()) LTailCallThroughMegamorphicCache( | 
| +      context, receiver_register, name_register); | 
| +} | 
| + | 
| + | 
| LInstruction* LChunkBuilder::DoInvokeFunction(HInvokeFunction* instr) { | 
| LOperand* context = UseFixed(instr->context(), esi); | 
| LOperand* function = UseFixed(instr->function(), edi); | 
|  |