Reviewers: Igor Sheludko,
Description:
Fix register aliasing after r26306, r26275.
BUG=
Please review this at https://codereview.chromium.org/877343003/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+8, -0 lines):
M src/ic/handler-compiler.cc
Index: src/ic/handler-compiler.cc
diff --git a/src/ic/handler-compiler.cc b/src/ic/handler-compiler.cc
index
8482422f84623aa4ef354af4a66c0837839601ec..2b5b6a285bc631fa5f7cdc459b00d85110a82fef
100644
--- a/src/ic/handler-compiler.cc
+++ b/src/ic/handler-compiler.cc
@@ -355,6 +355,10 @@ void
NamedLoadHandlerCompiler::GenerateLoadPostInterceptor(
Handle<Code> NamedLoadHandlerCompiler::CompileLoadViaGetter(
Handle<Name> name, int accessor_index, int expected_arguments) {
Register holder = Frontend(name);
+ if (holder.is(receiver())) {
+ __ Move(scratch1(), holder);
+ holder = scratch1();
+ }
GenerateLoadViaGetter(masm(), type(), receiver(), holder, accessor_index,
expected_arguments);
return GetCode(kind(), Code::FAST, name);
@@ -445,6 +449,10 @@ Handle<Code>
NamedStoreHandlerCompiler::CompileStoreViaSetter(
Handle<JSObject> object, Handle<Name> name, int accessor_index,
int expected_arguments) {
Register holder = Frontend(name);
+ if (holder.is(receiver())) {
+ __ Move(scratch1(), holder);
+ holder = scratch1();
+ }
GenerateStoreViaSetter(masm(), type(), receiver(), holder,
accessor_index,
expected_arguments);
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.