Index: src/mips/code-stubs-mips.cc |
diff --git a/src/mips/code-stubs-mips.cc b/src/mips/code-stubs-mips.cc |
index 3b242061b13af7c7049485fa5be4089dab222741..95c9e7900f5ce40cfd420f65fc993d2be5fc16f8 100644 |
--- a/src/mips/code-stubs-mips.cc |
+++ b/src/mips/code-stubs-mips.cc |
@@ -1962,8 +1962,11 @@ void ArgumentsAccessStub::GenerateNewStrict(MacroAssembler* masm) { |
__ bind(&adaptor_frame); |
__ lw(a1, MemOperand(a2, ArgumentsAdaptorFrameConstants::kLengthOffset)); |
if (has_new_target()) { |
+ Label skip_decrement; |
+ __ Branch(&skip_decrement, eq, a1, Operand(Smi::FromInt(0))); |
// Subtract 1 from smi-tagged arguments count. |
__ Subu(a1, a1, Operand(2)); |
+ __ bind(&skip_decrement); |
} |
__ sw(a1, MemOperand(sp, 0)); |
__ sll(at, a1, kPointerSizeLog2 - kSmiTagSize); |