| Index: src/full-codegen/ia32/full-codegen-ia32.cc
|
| diff --git a/src/full-codegen/ia32/full-codegen-ia32.cc b/src/full-codegen/ia32/full-codegen-ia32.cc
|
| index d704053f7ba6f4ae4df97dbb6986a82b677538c0..d504277aa1795a2c96a9dc205d8b715aa22701b6 100644
|
| --- a/src/full-codegen/ia32/full-codegen-ia32.cc
|
| +++ b/src/full-codegen/ia32/full-codegen-ia32.cc
|
| @@ -2385,11 +2385,13 @@ void FullCodeGenerator::EmitPossiblyEvalCall(Call* expr) {
|
| PrepareForBailoutForId(expr->EvalId(), BailoutState::NO_REGISTERS);
|
|
|
| SetCallPosition(expr);
|
| + Handle<Code> code = CodeFactory::CallIC(isolate(), ConvertReceiverMode::kAny,
|
| + expr->tail_call_mode())
|
| + .code();
|
| + __ Move(edx, Immediate(SmiFromSlot(expr->CallFeedbackICSlot())));
|
| __ mov(edi, Operand(esp, (arg_count + 1) * kPointerSize));
|
| - __ Set(eax, arg_count);
|
| - __ Call(isolate()->builtins()->Call(ConvertReceiverMode::kAny,
|
| - expr->tail_call_mode()),
|
| - RelocInfo::CODE_TARGET);
|
| + __ Move(eax, Immediate(arg_count));
|
| + __ call(code, RelocInfo::CODE_TARGET);
|
| OperandStackDepthDecrement(arg_count + 1);
|
| RecordJSReturnSite(expr);
|
| RestoreContext();
|
|
|