Index: src/x64/macro-assembler-x64.cc |
diff --git a/src/x64/macro-assembler-x64.cc b/src/x64/macro-assembler-x64.cc |
index abfa61a6f0895da353d573937d73f95cc6c7fc08..ea837dca4b014f4397428cdecc65db08b81cc42f 100644 |
--- a/src/x64/macro-assembler-x64.cc |
+++ b/src/x64/macro-assembler-x64.cc |
@@ -3753,7 +3753,7 @@ |
} |
-void MacroAssembler::LeaveExitFrame(bool save_doubles, bool pop_arguments) { |
+void MacroAssembler::LeaveExitFrame(bool save_doubles) { |
// Registers: |
// r15 : argv |
if (save_doubles) { |
@@ -3763,21 +3763,15 @@ |
movsd(reg, Operand(rbp, offset - ((i + 1) * kDoubleSize))); |
} |
} |
- |
- if (pop_arguments) { |
- // Get the return address from the stack and restore the frame pointer. |
- movp(rcx, Operand(rbp, kFPOnStackSize)); |
- movp(rbp, Operand(rbp, 0 * kPointerSize)); |
- |
- // Drop everything up to and including the arguments and the receiver |
- // from the caller stack. |
- leap(rsp, Operand(r15, 1 * kPointerSize)); |
- |
- PushReturnAddressFrom(rcx); |
- } else { |
- // Otherwise just leave the exit frame. |
- leave(); |
- } |
+ // Get the return address from the stack and restore the frame pointer. |
+ movp(rcx, Operand(rbp, kFPOnStackSize)); |
+ movp(rbp, Operand(rbp, 0 * kPointerSize)); |
+ |
+ // Drop everything up to and including the arguments and the receiver |
+ // from the caller stack. |
+ leap(rsp, Operand(r15, 1 * kPointerSize)); |
+ |
+ PushReturnAddressFrom(rcx); |
LeaveExitFrameEpilogue(true); |
} |