Index: src/mips/builtins-mips.cc |
diff --git a/src/mips/builtins-mips.cc b/src/mips/builtins-mips.cc |
index 0b495831b9142882eadf0bf6d96e861ab3ab41b1..2fe081ee676bd1ee76d7f871c20271c596322524 100644 |
--- a/src/mips/builtins-mips.cc |
+++ b/src/mips/builtins-mips.cc |
@@ -301,17 +301,12 @@ static void CallRuntimePassFunction(MacroAssembler* masm, |
Runtime::FunctionId function_id) { |
FrameScope scope(masm, StackFrame::INTERNAL); |
// Push a copy of the function onto the stack. |
- __ push(a1); |
- // Push call kind information. |
- __ push(t1); |
- // Function is also the parameter to the runtime call. |
- __ push(a1); |
+ // Push call kind information and function as parameter to the runtime call. |
+ __ Push(a1, t1, a1); |
__ CallRuntime(function_id, 1); |
- // Restore call kind information. |
- __ pop(t1); |
- // Restore receiver. |
- __ pop(a1); |
+ // Restore call kind information and receiver. |
+ __ Pop(a1, t1); |
} |
@@ -421,14 +416,11 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, |
__ sb(t0, constructor_count); |
__ Branch(&allocate, ne, t0, Operand(zero_reg)); |
- __ Push(a1, a2); |
- |
- __ push(a1); // Constructor. |
+ __ Push(a1, a2, a1); // a1 = Constructor. |
// The call will replace the stub, so the countdown is only done once. |
__ CallRuntime(Runtime::kFinalizeInstanceSize, 1); |
- __ pop(a2); |
- __ pop(a1); |
+ __ Pop(a1, a2); |
__ bind(&allocate); |
} |
@@ -1245,8 +1237,7 @@ void Builtins::Generate_FunctionApply(MacroAssembler* masm) { |
// Out of stack space. |
__ lw(a1, MemOperand(fp, kFunctionOffset)); |
- __ push(a1); |
- __ push(v0); |
+ __ Push(a1, v0); |
__ InvokeBuiltin(Builtins::APPLY_OVERFLOW, CALL_FUNCTION); |
// End of stack check. |
@@ -1327,8 +1318,7 @@ void Builtins::Generate_FunctionApply(MacroAssembler* masm) { |
// a0: current argument index |
__ bind(&loop); |
__ lw(a1, MemOperand(fp, kArgsOffset)); |
- __ push(a1); |
- __ push(a0); |
+ __ Push(a1, a0); |
// Call the runtime to access the property in the arguments array. |
__ CallRuntime(Runtime::kGetProperty, 2); |