Index: src/ic/ia32/ic-ia32.cc |
diff --git a/src/ic/ia32/ic-ia32.cc b/src/ic/ia32/ic-ia32.cc |
index c7dad0f25c1627c045ac30690a979bcf5cb9e039..4dd1a934cf425e4a6639d003a41a7c72ef623e6c 100644 |
--- a/src/ic/ia32/ic-ia32.cc |
+++ b/src/ic/ia32/ic-ia32.cc |
@@ -8,6 +8,7 @@ |
#include "src/codegen.h" |
#include "src/ic/ic.h" |
+#include "src/ic/ic-compiler.h" |
#include "src/ic/stub-cache.h" |
namespace v8 { |
@@ -777,7 +778,7 @@ void KeyedStoreIC::GenerateGeneric(MacroAssembler* masm, |
// Slow case: call runtime. |
__ bind(&slow); |
- GenerateRuntimeSetProperty(masm, strict_mode); |
+ PropertyICCompiler::GenerateRuntimeSetProperty(masm, strict_mode); |
// Extra capacity case: Check if there is extra capacity to |
// perform the store and update the length. Used for adding one |
@@ -1006,40 +1007,6 @@ void StoreIC::GenerateNormal(MacroAssembler* masm) { |
} |
-void StoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm, |
- StrictMode strict_mode) { |
- // Return address is on the stack. |
- DCHECK(!ebx.is(ReceiverRegister()) && !ebx.is(NameRegister()) && |
- !ebx.is(ValueRegister())); |
- __ pop(ebx); |
- __ push(ReceiverRegister()); |
- __ push(NameRegister()); |
- __ push(ValueRegister()); |
- __ push(Immediate(Smi::FromInt(strict_mode))); |
- __ push(ebx); // return address |
- |
- // Do tail-call to runtime routine. |
- __ TailCallRuntime(Runtime::kSetProperty, 4, 1); |
-} |
- |
- |
-void KeyedStoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm, |
- StrictMode strict_mode) { |
- // Return address is on the stack. |
- DCHECK(!ebx.is(ReceiverRegister()) && !ebx.is(NameRegister()) && |
- !ebx.is(ValueRegister())); |
- __ pop(ebx); |
- __ push(ReceiverRegister()); |
- __ push(NameRegister()); |
- __ push(ValueRegister()); |
- __ push(Immediate(Smi::FromInt(strict_mode))); |
- __ push(ebx); // return address |
- |
- // Do tail-call to runtime routine. |
- __ TailCallRuntime(Runtime::kSetProperty, 4, 1); |
-} |
- |
- |
void KeyedStoreIC::GenerateMiss(MacroAssembler* masm) { |
// Return address is on the stack. |
StoreIC_PushArgs(masm); |