| Index: src/ia32/lithium-ia32.cc
|
| diff --git a/src/ia32/lithium-ia32.cc b/src/ia32/lithium-ia32.cc
|
| index b99a3b1e5b1f4d132736f509056cb25f894bb317..6701a8b16a0b21a594487d79436c31dc0393b1e5 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);
|
|
|