Index: src/arm/code-stubs-arm.cc |
diff --git a/src/arm/code-stubs-arm.cc b/src/arm/code-stubs-arm.cc |
index 3aa76e7c82c72d832f9edb798a168c7b01831129..62fcc9a981ccd5946ed7946d006d7e6d5224d4d1 100644 |
--- a/src/arm/code-stubs-arm.cc |
+++ b/src/arm/code-stubs-arm.cc |
@@ -7879,7 +7879,12 @@ void StubFailureTrampolineStub::Generate(MacroAssembler* masm) { |
bool save_fp_regs = CpuFeatures::IsSupported(VFP2); |
CEntryStub ces(1, save_fp_regs ? kSaveFPRegs : kDontSaveFPRegs); |
__ Call(ces.GetCode(), RelocInfo::CODE_TARGET); |
+ int parameter_count_offset = |
+ StubFailureTrampolineFrame::kCallerStackParameterCountFrameOffset; |
+ __ ldr(r1, MemOperand(fp, parameter_count_offset)); |
masm->LeaveFrame(StackFrame::STUB_FAILURE_TRAMPOLINE); |
+ __ mov(r1, Operand(r1, LSL, kPointerSizeLog2)); |
+ __ add(sp, sp, r1); |
__ Ret(); |
} |