Commit 925837f0 authored by palfia@homejinni.com's avatar palfia@homejinni.com

MIPS: Properly restore the receiver after the interceptor call.

Port r18289 (6bc886d3)

BUG=
R=gergely@homejinni.com

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18294 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 6b65e909
......@@ -1078,12 +1078,13 @@ class CallInterceptorCompiler BASE_EMBEDDED {
{
FrameScope scope(masm, StackFrame::INTERNAL);
__ Push(holder, name_);
__ Push(receiver, holder, name_);
CompileCallLoadPropertyWithInterceptor(
masm, receiver, holder, name_, holder_obj,
IC::kLoadPropertyWithInterceptorOnly);
__ pop(name_); // Restore the name.
__ pop(holder); // Restore the holder.
__ pop(receiver);
__ pop(name_);
__ pop(holder);
}
// If interceptor returns no-result sentinel, call the constant function.
__ LoadRoot(scratch, Heap::kNoInterceptorResultSentinelRootIndex);
......
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