Reviewers: drcarney, danno, Paul Lind, kisg,
Message:
PTAL.
Description:
MIPS: Split AccessorInfo into DeclaredAccessorInfo and
ExecutableAccessorInfo
Port r13649 (0a9e0bf0)
BUG=
Please review this at https://codereview.chromium.org/12253005/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/mips/stub-cache-mips.cc
Index: src/mips/stub-cache-mips.cc
diff --git a/src/mips/stub-cache-mips.cc b/src/mips/stub-cache-mips.cc
index
0f205c144af2b67703d7007a0ab61ca566d0aa9f..bb8152d7a1f7b63006e4add4470c669b74e91f9f
100644
--- a/src/mips/stub-cache-mips.cc
+++ b/src/mips/stub-cache-mips.cc
@@ -1210,14 +1210,15 @@ void
StubCompiler::GenerateLoadConstant(Handle<JSObject> object,
}
-void StubCompiler::GenerateDictionaryLoadCallback(Register receiver,
- Register name_reg,
- Register scratch1,
- Register scratch2,
- Register scratch3,
- Handle<AccessorInfo>
callback,
- Handle<String> name,
- Label* miss) {
+void StubCompiler::GenerateDictionaryLoadCallback(
+ Register receiver,
+ Register name_reg,
+ Register scratch1,
+ Register scratch2,
+ Register scratch3,
+ Handle<ExecutableAccessorInfo> callback,
+ Handle<String> name,
+ Label* miss) {
ASSERT(!receiver.is(scratch1));
ASSERT(!receiver.is(scratch2));
ASSERT(!receiver.is(scratch3));
@@ -1248,17 +1249,18 @@ void
StubCompiler::GenerateDictionaryLoadCallback(Register receiver,
}
-void StubCompiler::GenerateLoadCallback(Handle<JSObject> object,
- Handle<JSObject> holder,
- Register receiver,
- Register name_reg,
- Register scratch1,
- Register scratch2,
- Register scratch3,
- Register scratch4,
- Handle<AccessorInfo> callback,
- Handle<String> name,
- Label* miss) {
+void StubCompiler::GenerateLoadCallback(
+ Handle<JSObject> object,
+ Handle<JSObject> holder,
+ Register receiver,
+ Register name_reg,
+ Register scratch1,
+ Register scratch2,
+ Register scratch3,
+ Register scratch4,
+ Handle<ExecutableAccessorInfo> callback,
+ Handle<String> name,
+ Label* miss) {
// Check that the receiver isn't a smi.
__ JumpIfSmi(receiver, miss, scratch1);
@@ -1277,7 +1279,8 @@ void
StubCompiler::GenerateLoadCallback(Handle<JSObject> object,
__ mov(scratch2, sp); // scratch2 = AccessorInfo::args_
if (heap()->InNewSpace(callback->data())) {
__ li(scratch3, callback);
- __ lw(scratch3, FieldMemOperand(scratch3, AccessorInfo::kDataOffset));
+ __ lw(scratch3,
+ FieldMemOperand(scratch3, ExecutableAccessorInfo::kDataOffset));
} else {
__ li(scratch3, Handle<Object>(callback->data()));
}
@@ -1341,8 +1344,9 @@ void
StubCompiler::GenerateLoadInterceptor(Handle<JSObject> object,
if (lookup->IsField()) {
compile_followup_inline = true;
} else if (lookup->type() == CALLBACKS &&
- lookup->GetCallbackObject()->IsAccessorInfo()) {
- AccessorInfo* callback =
AccessorInfo::cast(lookup->GetCallbackObject());
+ lookup->GetCallbackObject()->IsExecutableAccessorInfo()) {
+ ExecutableAccessorInfo* callback =
+ ExecutableAccessorInfo::cast(lookup->GetCallbackObject());
compile_followup_inline = callback->getter() != NULL &&
callback->IsCompatibleReceiver(*object);
}
@@ -1422,8 +1426,8 @@ void
StubCompiler::GenerateLoadInterceptor(Handle<JSObject> object,
// We found CALLBACKS property in prototype chain of interceptor's
// holder.
ASSERT(lookup->type() == CALLBACKS);
- Handle<AccessorInfo> callback(
- AccessorInfo::cast(lookup->GetCallbackObject()));
+ Handle<ExecutableAccessorInfo> callback(
+ ExecutableAccessorInfo::cast(lookup->GetCallbackObject()));
ASSERT(callback->getter() != NULL);
// Tail call to runtime.
@@ -1433,7 +1437,7 @@ void
StubCompiler::GenerateLoadInterceptor(Handle<JSObject> object,
__ Push(receiver, holder_reg);
__ lw(scratch3,
- FieldMemOperand(scratch2, AccessorInfo::kDataOffset));
+ FieldMemOperand(scratch2,
ExecutableAccessorInfo::kDataOffset));
__ li(scratch1, Operand(ExternalReference::isolate_address()));
__ Push(scratch3, scratch1, scratch2, name_reg);
@@ -2694,7 +2698,7 @@ Handle<Code> StoreStubCompiler::CompileStoreCallback(
Handle<String> name,
Handle<JSObject> receiver,
Handle<JSObject> holder,
- Handle<AccessorInfo> callback) {
+ Handle<ExecutableAccessorInfo> callback) {
// ----------- S t a t e -------------
// -- a0 : value
// -- a1 : receiver
--
--
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/groups/opt_out.