| Index: src/full-codegen/x87/full-codegen-x87.cc
|
| diff --git a/src/full-codegen/x87/full-codegen-x87.cc b/src/full-codegen/x87/full-codegen-x87.cc
|
| index 29a277edfa224493a5a315b2cb674b97bfd8a32b..3f4c894c460bf1b0e00e9ac4057ed19df99ffc3f 100644
|
| --- a/src/full-codegen/x87/full-codegen-x87.cc
|
| +++ b/src/full-codegen/x87/full-codegen-x87.cc
|
| @@ -2936,7 +2936,7 @@ void FullCodeGenerator::VisitCallNew(CallNew* expr) {
|
|
|
| // Call the construct call builtin that handles allocation and
|
| // constructor invocation.
|
| - SetConstructCallPosition(expr);
|
| + SetConstructCallPosition(expr, arg_count);
|
|
|
| // Load function and argument count into edi and eax.
|
| __ Move(eax, Immediate(arg_count));
|
| @@ -2972,7 +2972,7 @@ void FullCodeGenerator::EmitSuperConstructorCall(Call* expr) {
|
|
|
| // Call the construct call builtin that handles allocation and
|
| // constructor invocation.
|
| - SetConstructCallPosition(expr);
|
| + SetConstructCallPosition(expr, arg_count);
|
|
|
| // Load new target into ecx.
|
| VisitForAccumulatorValue(super_call_ref->new_target_var());
|
| @@ -3713,6 +3713,10 @@ void FullCodeGenerator::EmitDefaultConstructorCallSuper(CallRuntime* expr) {
|
| VisitForStackValue(args->at(0));
|
| VisitForStackValue(args->at(1));
|
|
|
| + // Call the construct call builtin that handles allocation and
|
| + // constructor invocation.
|
| + SetConstructCallPosition(expr, 0);
|
| +
|
| // Check if the calling frame is an arguments adaptor frame.
|
| Label adaptor_frame, args_set_up, runtime;
|
| __ mov(edx, Operand(ebp, StandardFrameConstants::kCallerFPOffset));
|
|
|