Remove keyed_store_calling convention and friends
BUG= R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/424423002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22706 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
c145ffab0e
commit
2c2fce0c94
@ -514,21 +514,6 @@ const Register StoreIC::NameRegister() { return r2; }
|
|||||||
const Register StoreIC::ValueRegister() { return r0; }
|
const Register StoreIC::ValueRegister() { return r0; }
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::ReceiverRegister() {
|
|
||||||
return StoreIC::ReceiverRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::NameRegister() {
|
|
||||||
return StoreIC::NameRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::ValueRegister() {
|
|
||||||
return StoreIC::ValueRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::MapRegister() {
|
const Register KeyedStoreIC::MapRegister() {
|
||||||
return r3;
|
return r3;
|
||||||
}
|
}
|
||||||
|
@ -1167,21 +1167,12 @@ Register* PropertyAccessCompiler::store_calling_convention() {
|
|||||||
// receiver, name, scratch1, scratch2, scratch3.
|
// receiver, name, scratch1, scratch2, scratch3.
|
||||||
Register receiver = StoreIC::ReceiverRegister();
|
Register receiver = StoreIC::ReceiverRegister();
|
||||||
Register name = StoreIC::NameRegister();
|
Register name = StoreIC::NameRegister();
|
||||||
|
ASSERT(r3.is(KeyedStoreIC::MapRegister()));
|
||||||
static Register registers[] = { receiver, name, r3, r4, r5 };
|
static Register registers[] = { receiver, name, r3, r4, r5 };
|
||||||
return registers;
|
return registers;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Register* PropertyAccessCompiler::keyed_store_calling_convention() {
|
|
||||||
// receiver, name, scratch1/map, scratch2, scratch3.
|
|
||||||
Register receiver = KeyedStoreIC::ReceiverRegister();
|
|
||||||
Register name = KeyedStoreIC::NameRegister();
|
|
||||||
Register map = KeyedStoreIC::MapRegister();
|
|
||||||
static Register registers[] = { receiver, name, map, r4, r5 };
|
|
||||||
return registers;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
Register NamedStoreHandlerCompiler::value() { return StoreIC::ValueRegister(); }
|
Register NamedStoreHandlerCompiler::value() { return StoreIC::ValueRegister(); }
|
||||||
|
|
||||||
|
|
||||||
|
@ -532,21 +532,6 @@ const Register StoreIC::NameRegister() { return x2; }
|
|||||||
const Register StoreIC::ValueRegister() { return x0; }
|
const Register StoreIC::ValueRegister() { return x0; }
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::ReceiverRegister() {
|
|
||||||
return StoreIC::ReceiverRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::NameRegister() {
|
|
||||||
return StoreIC::NameRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::ValueRegister() {
|
|
||||||
return StoreIC::ValueRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::MapRegister() {
|
const Register KeyedStoreIC::MapRegister() {
|
||||||
return x3;
|
return x3;
|
||||||
}
|
}
|
||||||
|
@ -1147,21 +1147,12 @@ Register* PropertyAccessCompiler::store_calling_convention() {
|
|||||||
// receiver, value, scratch1, scratch2, scratch3.
|
// receiver, value, scratch1, scratch2, scratch3.
|
||||||
Register receiver = StoreIC::ReceiverRegister();
|
Register receiver = StoreIC::ReceiverRegister();
|
||||||
Register name = StoreIC::NameRegister();
|
Register name = StoreIC::NameRegister();
|
||||||
|
ASSERT(x3.is(KeyedStoreIC::MapRegister()));
|
||||||
static Register registers[] = { receiver, name, x3, x4, x5 };
|
static Register registers[] = { receiver, name, x3, x4, x5 };
|
||||||
return registers;
|
return registers;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Register* PropertyAccessCompiler::keyed_store_calling_convention() {
|
|
||||||
// receiver, name, scratch1/map, scratch2, scratch3.
|
|
||||||
Register receiver = KeyedStoreIC::ReceiverRegister();
|
|
||||||
Register name = KeyedStoreIC::NameRegister();
|
|
||||||
Register map = KeyedStoreIC::MapRegister();
|
|
||||||
static Register registers[] = { receiver, name, map, x4, x5 };
|
|
||||||
return registers;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
Register NamedStoreHandlerCompiler::value() { return StoreIC::ValueRegister(); }
|
Register NamedStoreHandlerCompiler::value() { return StoreIC::ValueRegister(); }
|
||||||
|
|
||||||
|
|
||||||
|
@ -990,21 +990,6 @@ const Register StoreIC::NameRegister() { return ecx; }
|
|||||||
const Register StoreIC::ValueRegister() { return eax; }
|
const Register StoreIC::ValueRegister() { return eax; }
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::ReceiverRegister() {
|
|
||||||
return StoreIC::ReceiverRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::NameRegister() {
|
|
||||||
return StoreIC::NameRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::ValueRegister() {
|
|
||||||
return StoreIC::ValueRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::MapRegister() {
|
const Register KeyedStoreIC::MapRegister() {
|
||||||
return ebx;
|
return ebx;
|
||||||
}
|
}
|
||||||
|
@ -1196,21 +1196,12 @@ Register* PropertyAccessCompiler::store_calling_convention() {
|
|||||||
// receiver, name, scratch1, scratch2, scratch3.
|
// receiver, name, scratch1, scratch2, scratch3.
|
||||||
Register receiver = StoreIC::ReceiverRegister();
|
Register receiver = StoreIC::ReceiverRegister();
|
||||||
Register name = StoreIC::NameRegister();
|
Register name = StoreIC::NameRegister();
|
||||||
|
ASSERT(ebx.is(KeyedStoreIC::MapRegister()));
|
||||||
static Register registers[] = { receiver, name, ebx, edi, no_reg };
|
static Register registers[] = { receiver, name, ebx, edi, no_reg };
|
||||||
return registers;
|
return registers;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Register* PropertyAccessCompiler::keyed_store_calling_convention() {
|
|
||||||
// receiver, name, scratch1/map, scratch2, scratch3.
|
|
||||||
Register receiver = KeyedStoreIC::ReceiverRegister();
|
|
||||||
Register name = KeyedStoreIC::NameRegister();
|
|
||||||
Register map = KeyedStoreIC::MapRegister();
|
|
||||||
static Register registers[] = { receiver, name, map, edi, no_reg };
|
|
||||||
return registers;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
Register NamedStoreHandlerCompiler::value() { return StoreIC::ValueRegister(); }
|
Register NamedStoreHandlerCompiler::value() { return StoreIC::ValueRegister(); }
|
||||||
|
|
||||||
|
|
||||||
|
4
src/ic.h
4
src/ic.h
@ -690,10 +690,6 @@ class KeyedStoreIC: public StoreIC {
|
|||||||
return ExtraICStateKeyedAccessStoreMode::decode(extra_state);
|
return ExtraICStateKeyedAccessStoreMode::decode(extra_state);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const Register ReceiverRegister();
|
|
||||||
static const Register NameRegister();
|
|
||||||
static const Register ValueRegister();
|
|
||||||
|
|
||||||
// The map register isn't part of the normal call specification, but
|
// The map register isn't part of the normal call specification, but
|
||||||
// ElementsTransitionAndStoreStub, used in polymorphic keyed store
|
// ElementsTransitionAndStoreStub, used in polymorphic keyed store
|
||||||
// stub implementations requires it to be initialized.
|
// stub implementations requires it to be initialized.
|
||||||
|
@ -1099,12 +1099,9 @@ void PropertyAccessCompiler::TailCallBuiltin(MacroAssembler* masm,
|
|||||||
Register* PropertyAccessCompiler::GetCallingConvention(Code::Kind kind) {
|
Register* PropertyAccessCompiler::GetCallingConvention(Code::Kind kind) {
|
||||||
if (kind == Code::LOAD_IC || kind == Code::KEYED_LOAD_IC) {
|
if (kind == Code::LOAD_IC || kind == Code::KEYED_LOAD_IC) {
|
||||||
return load_calling_convention();
|
return load_calling_convention();
|
||||||
} else if (kind == Code::STORE_IC) {
|
|
||||||
return store_calling_convention();
|
|
||||||
} else {
|
|
||||||
ASSERT_EQ(Code::KEYED_STORE_IC, kind);
|
|
||||||
return keyed_store_calling_convention();
|
|
||||||
}
|
}
|
||||||
|
ASSERT(kind == Code::STORE_IC || kind == Code::KEYED_STORE_IC);
|
||||||
|
return store_calling_convention();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1016,21 +1016,6 @@ const Register StoreIC::NameRegister() { return rcx; }
|
|||||||
const Register StoreIC::ValueRegister() { return rax; }
|
const Register StoreIC::ValueRegister() { return rax; }
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::ReceiverRegister() {
|
|
||||||
return StoreIC::ReceiverRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::NameRegister() {
|
|
||||||
return StoreIC::NameRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::ValueRegister() {
|
|
||||||
return StoreIC::ValueRegister();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const Register KeyedStoreIC::MapRegister() {
|
const Register KeyedStoreIC::MapRegister() {
|
||||||
return rbx;
|
return rbx;
|
||||||
}
|
}
|
||||||
|
@ -1126,21 +1126,12 @@ Register* PropertyAccessCompiler::store_calling_convention() {
|
|||||||
// receiver, name, scratch1, scratch2, scratch3.
|
// receiver, name, scratch1, scratch2, scratch3.
|
||||||
Register receiver = KeyedStoreIC::ReceiverRegister();
|
Register receiver = KeyedStoreIC::ReceiverRegister();
|
||||||
Register name = KeyedStoreIC::NameRegister();
|
Register name = KeyedStoreIC::NameRegister();
|
||||||
|
ASSERT(rbx.is(KeyedStoreIC::MapRegister()));
|
||||||
static Register registers[] = { receiver, name, rbx, rdi, r8 };
|
static Register registers[] = { receiver, name, rbx, rdi, r8 };
|
||||||
return registers;
|
return registers;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Register* PropertyAccessCompiler::keyed_store_calling_convention() {
|
|
||||||
// receiver, name, scratch1/map, scratch2, scratch3.
|
|
||||||
Register receiver = KeyedStoreIC::ReceiverRegister();
|
|
||||||
Register name = KeyedStoreIC::NameRegister();
|
|
||||||
Register map = KeyedStoreIC::MapRegister();
|
|
||||||
static Register registers[] = { receiver, name, map, rdi, r8 };
|
|
||||||
return registers;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
Register NamedStoreHandlerCompiler::value() { return StoreIC::ValueRegister(); }
|
Register NamedStoreHandlerCompiler::value() { return StoreIC::ValueRegister(); }
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user