Index: src/mips64/builtins-mips64.cc |
diff --git a/src/mips64/builtins-mips64.cc b/src/mips64/builtins-mips64.cc |
index 7fe52b9db563942926cc92c8881f54e6c924257b..07b1fbab59cf2812f15c7311ff2a52a7324e5820 100644 |
--- a/src/mips64/builtins-mips64.cc |
+++ b/src/mips64/builtins-mips64.cc |
@@ -488,15 +488,12 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, |
} |
__ SmiUntag(a0); |
- // Push new.target onto the construct frame. This is stored just below the |
- // receiver on the stack. |
if (create_implicit_receiver) { |
// Push the allocated receiver to the stack. We need two copies |
// because we may have to return the original one and the calling |
// conventions dictate that the called function pops the receiver. |
- __ Push(a3, t0, t0); |
+ __ Push(t0, t0); |
} else { |
- __ push(a3); |
__ PushRoot(Heap::kTheHoleValueRootIndex); |
} |
@@ -511,8 +508,7 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, |
// t0: number of arguments (smi-tagged) |
// sp[0]: receiver |
// sp[1]: receiver |
- // sp[2]: new.target |
- // sp[3]: number of arguments (smi-tagged) |
+ // sp[2]: number of arguments (smi-tagged) |
Label loop, entry; |
__ mov(t0, a0); |
__ jmp(&entry); |
@@ -557,8 +553,7 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, |
// If the result is a smi, it is *not* an object in the ECMA sense. |
// v0: result |
// sp[0]: receiver (newly allocated object) |
- // sp[1]: new.target |
- // sp[2]: number of arguments (smi-tagged) |
+ // sp[1]: number of arguments (smi-tagged) |
__ JumpIfSmi(v0, &use_receiver); |
// If the type of the result (stored in its map) is less than |
@@ -576,11 +571,10 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, |
__ bind(&exit); |
// v0: result |
// sp[0]: receiver (newly allocated object) |
- // sp[1]: new target |
- // sp[2]: number of arguments (smi-tagged) |
- __ ld(a1, MemOperand(sp, 2 * kPointerSize)); |
+ // sp[1]: number of arguments (smi-tagged) |
+ __ ld(a1, MemOperand(sp, 1 * kPointerSize)); |
} else { |
- __ ld(a1, MemOperand(sp, kPointerSize)); |
+ __ ld(a1, MemOperand(sp)); |
} |
// Leave construct frame. |