Commit fdce3e6f authored by paul.lind's avatar paul.lind Committed by Commit bot

MIPS: Calls to the CallIC miss handler looked up the receiver incorrectly.

Port 13b97b62

Original commit message:
On platforms that don't push the return address on the stack at time of call, there was an error.

BUG=

Review URL: https://codereview.chromium.org/864713003

Cr-Commit-Position: refs/heads/master@{#26443}
parent 49ef5498
......@@ -2928,8 +2928,8 @@ void CallICStub::Generate(MacroAssembler* masm) {
void CallICStub::GenerateMiss(MacroAssembler* masm) {
// Get the receiver of the function from the stack; 1 ~ return address.
__ lw(t0, MemOperand(sp, (arg_count() + 1) * kPointerSize));
// Get the receiver of the function from the stack.
__ lw(t0, MemOperand(sp, arg_count() * kPointerSize));
{
FrameScope scope(masm, StackFrame::INTERNAL);
......
......@@ -3003,8 +3003,8 @@ void CallICStub::Generate(MacroAssembler* masm) {
void CallICStub::GenerateMiss(MacroAssembler* masm) {
// Get the receiver of the function from the stack; 1 ~ return address.
__ ld(a4, MemOperand(sp, (arg_count() + 1) * kPointerSize));
// Get the receiver of the function from the stack.
__ ld(a4, MemOperand(sp, arg_count() * kPointerSize));
{
FrameScope scope(masm, StackFrame::INTERNAL);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment