Commit d450fe1e authored by whesse@chromium.org's avatar whesse@chromium.org

Remove StoreIC::Generate, and inline StoreIC::GenerateInitialize.

Review URL: http://codereview.chromium.org/558067

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3754 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 4963f13f
...@@ -810,7 +810,7 @@ void StoreIC::GenerateMegamorphic(MacroAssembler* masm) { ...@@ -810,7 +810,7 @@ void StoreIC::GenerateMegamorphic(MacroAssembler* masm) {
StubCache::GenerateProbe(masm, flags, r1, r2, r3, no_reg); StubCache::GenerateProbe(masm, flags, r1, r2, r3, no_reg);
// Cache miss: Jump to runtime. // Cache miss: Jump to runtime.
Generate(masm, ExternalReference(IC_Utility(kStoreIC_Miss))); GenerateMiss(masm);
} }
...@@ -831,7 +831,7 @@ void StoreIC::GenerateExtendStorage(MacroAssembler* masm) { ...@@ -831,7 +831,7 @@ void StoreIC::GenerateExtendStorage(MacroAssembler* masm) {
} }
void StoreIC::Generate(MacroAssembler* masm, const ExternalReference& f) { void StoreIC::GenerateMiss(MacroAssembler* masm) {
// ----------- S t a t e ------------- // ----------- S t a t e -------------
// -- r0 : value // -- r0 : value
// -- r2 : name // -- r2 : name
...@@ -843,7 +843,7 @@ void StoreIC::Generate(MacroAssembler* masm, const ExternalReference& f) { ...@@ -843,7 +843,7 @@ void StoreIC::Generate(MacroAssembler* masm, const ExternalReference& f) {
__ stm(db_w, sp, r0.bit() | r2.bit() | r3.bit()); __ stm(db_w, sp, r0.bit() | r2.bit() | r3.bit());
// Perform tail call to the entry. // Perform tail call to the entry.
__ TailCallRuntime(f, 3, 1); __ TailCallRuntime(ExternalReference(IC_Utility(kStoreIC_Miss)), 3, 1);
} }
......
...@@ -1389,7 +1389,7 @@ void StoreIC::GenerateMegamorphic(MacroAssembler* masm) { ...@@ -1389,7 +1389,7 @@ void StoreIC::GenerateMegamorphic(MacroAssembler* masm) {
StubCache::GenerateProbe(masm, flags, edx, ecx, ebx, no_reg); StubCache::GenerateProbe(masm, flags, edx, ecx, ebx, no_reg);
// Cache miss: Jump to runtime. // Cache miss: Jump to runtime.
Generate(masm, ExternalReference(IC_Utility(kStoreIC_Miss))); GenerateMiss(masm);
} }
...@@ -1413,7 +1413,7 @@ void StoreIC::GenerateExtendStorage(MacroAssembler* masm) { ...@@ -1413,7 +1413,7 @@ void StoreIC::GenerateExtendStorage(MacroAssembler* masm) {
} }
void StoreIC::Generate(MacroAssembler* masm, const ExternalReference& f) { void StoreIC::GenerateMiss(MacroAssembler* masm) {
// ----------- S t a t e ------------- // ----------- S t a t e -------------
// -- eax : value // -- eax : value
// -- ecx : name // -- ecx : name
...@@ -1428,7 +1428,7 @@ void StoreIC::Generate(MacroAssembler* masm, const ExternalReference& f) { ...@@ -1428,7 +1428,7 @@ void StoreIC::Generate(MacroAssembler* masm, const ExternalReference& f) {
__ push(ebx); __ push(ebx);
// Perform tail call to the entry. // Perform tail call to the entry.
__ TailCallRuntime(f, 3, 1); __ TailCallRuntime(ExternalReference(IC_Utility(kStoreIC_Miss)), 3, 1);
} }
......
...@@ -1395,16 +1395,6 @@ Object* SharedStoreIC_ExtendStorage(Arguments args) { ...@@ -1395,16 +1395,6 @@ Object* SharedStoreIC_ExtendStorage(Arguments args) {
} }
void StoreIC::GenerateInitialize(MacroAssembler* masm) {
Generate(masm, ExternalReference(IC_Utility(kStoreIC_Miss)));
}
void StoreIC::GenerateMiss(MacroAssembler* masm) {
Generate(masm, ExternalReference(IC_Utility(kStoreIC_Miss)));
}
// Used from ic_<arch>.cc. // Used from ic_<arch>.cc.
Object* KeyedStoreIC_Miss(Arguments args) { Object* KeyedStoreIC_Miss(Arguments args) {
NoHandleAllocation na; NoHandleAllocation na;
......
...@@ -348,14 +348,12 @@ class StoreIC: public IC { ...@@ -348,14 +348,12 @@ class StoreIC: public IC {
Handle<Object> value); Handle<Object> value);
// Code generators for stub routines. Only called once at startup. // Code generators for stub routines. Only called once at startup.
static void GenerateInitialize(MacroAssembler* masm); static void GenerateInitialize(MacroAssembler* masm) { GenerateMiss(masm); }
static void GenerateMiss(MacroAssembler* masm); static void GenerateMiss(MacroAssembler* masm);
static void GenerateMegamorphic(MacroAssembler* masm); static void GenerateMegamorphic(MacroAssembler* masm);
static void GenerateExtendStorage(MacroAssembler* masm); static void GenerateExtendStorage(MacroAssembler* masm);
private: private:
static void Generate(MacroAssembler* masm, const ExternalReference& f);
// Update the inline cache and the global stub cache based on the // Update the inline cache and the global stub cache based on the
// lookup result. // lookup result.
void UpdateCaches(LookupResult* lookup, void UpdateCaches(LookupResult* lookup,
......
...@@ -1326,7 +1326,7 @@ bool LoadIC::PatchInlinedLoad(Address address, Object* map, int offset) { ...@@ -1326,7 +1326,7 @@ bool LoadIC::PatchInlinedLoad(Address address, Object* map, int offset) {
return true; return true;
} }
void StoreIC::Generate(MacroAssembler* masm, ExternalReference const& f) { void StoreIC::GenerateMiss(MacroAssembler* masm) {
// ----------- S t a t e ------------- // ----------- S t a t e -------------
// -- rax : value // -- rax : value
// -- rcx : name // -- rcx : name
...@@ -1341,7 +1341,7 @@ void StoreIC::Generate(MacroAssembler* masm, ExternalReference const& f) { ...@@ -1341,7 +1341,7 @@ void StoreIC::Generate(MacroAssembler* masm, ExternalReference const& f) {
__ push(rbx); // return address __ push(rbx); // return address
// Perform tail call to the entry. // Perform tail call to the entry.
__ TailCallRuntime(f, 3, 1); __ TailCallRuntime(ExternalReference(IC_Utility(kStoreIC_Miss)), 3, 1);
} }
void StoreIC::GenerateExtendStorage(MacroAssembler* masm) { void StoreIC::GenerateExtendStorage(MacroAssembler* masm) {
...@@ -1379,7 +1379,7 @@ void StoreIC::GenerateMegamorphic(MacroAssembler* masm) { ...@@ -1379,7 +1379,7 @@ void StoreIC::GenerateMegamorphic(MacroAssembler* masm) {
StubCache::GenerateProbe(masm, flags, rdx, rcx, rbx, no_reg); StubCache::GenerateProbe(masm, flags, rdx, rcx, rbx, no_reg);
// Cache miss: Jump to runtime. // Cache miss: Jump to runtime.
Generate(masm, ExternalReference(IC_Utility(kStoreIC_Miss))); GenerateMiss(masm);
} }
......
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