Index: src/mips/macro-assembler-mips.cc |
diff --git a/src/mips/macro-assembler-mips.cc b/src/mips/macro-assembler-mips.cc |
index 14a1e2fdca778e5a970cd1e65ac4a9918256a19e..ace7323ee9d410cb67f23c6a210910f0e69afd65 100644 |
--- a/src/mips/macro-assembler-mips.cc |
+++ b/src/mips/macro-assembler-mips.cc |
@@ -3963,7 +3963,6 @@ void MacroAssembler::CallApiFunctionAndReturn(ExternalReference function, |
ExternalReference thunk_ref, |
Register thunk_last_arg, |
int stack_space, |
- bool returns_handle, |
int return_value_offset_from_fp) { |
ExternalReference next_address = |
ExternalReference::handle_scope_next_address(isolate()); |
@@ -3992,14 +3991,6 @@ void MacroAssembler::CallApiFunctionAndReturn(ExternalReference function, |
PopSafepointRegisters(); |
} |
- // The O32 ABI requires us to pass a pointer in a0 where the returned struct |
- // (4 bytes) will be placed. This is also built into the Simulator. |
- // Set up the pointer to the returned value (a0). It was allocated in |
- // EnterExitFrame. |
- if (returns_handle) { |
- addiu(a0, fp, ExitFrameConstants::kStackSpaceOffset); |
- } |
- |
Label profiler_disabled; |
Label end_profiler_check; |
bool* is_profiling_flag = |
@@ -4039,19 +4030,6 @@ void MacroAssembler::CallApiFunctionAndReturn(ExternalReference function, |
Label leave_exit_frame; |
Label return_value_loaded; |
- if (returns_handle) { |
- Label load_return_value; |
- |
- // As mentioned above, on MIPS a pointer is returned - we need to |
- // dereference it to get the actual return value (which is also a pointer). |
- lw(v0, MemOperand(v0)); |
- |
- Branch(&load_return_value, eq, v0, Operand(zero_reg)); |
- // Dereference returned value. |
- lw(v0, MemOperand(v0)); |
- Branch(&return_value_loaded); |
- bind(&load_return_value); |
- } |
// Load value from ReturnValue. |
lw(v0, MemOperand(fp, return_value_offset_from_fp*kPointerSize)); |
bind(&return_value_loaded); |