Index: src/mips/builtins-mips.cc |
diff --git a/src/mips/builtins-mips.cc b/src/mips/builtins-mips.cc |
index 44acfb99a1ca9a8b95ea48f2719fed59979b08bd..eebf13cf146f89d3db1075d368863c3f70d7e89b 100644 |
--- a/src/mips/builtins-mips.cc |
+++ b/src/mips/builtins-mips.cc |
@@ -8,7 +8,6 @@ |
#include "src/debug/debug.h" |
#include "src/deoptimizer.h" |
#include "src/full-codegen/full-codegen.h" |
-#include "src/interpreter/bytecodes.h" |
#include "src/runtime/runtime.h" |
@@ -996,8 +995,11 @@ void Builtins::Generate_InterpreterExitTrampoline(MacroAssembler* masm) { |
// Leave the frame (also dropping the register file). |
__ LeaveFrame(StackFrame::JAVA_SCRIPT); |
- // Drop receiver + arguments. |
- __ Drop(1); // TODO(rmcilroy): Get number of arguments from BytecodeArray. |
+ |
+ // Drop receiver + arguments and return. |
+ __ lw(at, FieldMemOperand(kInterpreterBytecodeArrayRegister, |
+ BytecodeArray::kParameterSizeOffset)); |
+ __ Addu(sp, sp, at); |
__ Jump(ra); |
} |