Index: src/ia32/lithium-codegen-ia32.cc |
diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc |
index bba3acaa9a55ac059287d801acc552a7f6f70d69..99a8fc3512e0083f3ed733c084f700dbfd2f64c5 100644 |
--- a/src/ia32/lithium-codegen-ia32.cc |
+++ b/src/ia32/lithium-codegen-ia32.cc |
@@ -3170,10 +3170,9 @@ void LCodeGen::DoLoadGlobalGeneric(LLoadGlobalGeneric* instr) { |
ASSERT(ToRegister(instr->result()).is(eax)); |
__ mov(ecx, instr->name()); |
- RelocInfo::Mode mode = instr->for_typeof() ? RelocInfo::CODE_TARGET : |
- RelocInfo::CODE_TARGET_CONTEXT; |
- Handle<Code> ic = isolate()->builtins()->LoadIC_Initialize(); |
- CallCode(ic, mode, instr); |
+ ContextualMode mode = instr->for_typeof() ? NOT_CONTEXTUAL : CONTEXTUAL; |
+ Handle<Code> ic = LoadIC::initialize_stub(isolate(), mode); |
+ CallCode(ic, RelocInfo::CODE_TARGET, instr); |
} |
@@ -3202,10 +3201,10 @@ void LCodeGen::DoStoreGlobalGeneric(LStoreGlobalGeneric* instr) { |
ASSERT(ToRegister(instr->value()).is(eax)); |
__ mov(ecx, instr->name()); |
- Handle<Code> ic = (instr->strict_mode_flag() == kStrictMode) |
- ? isolate()->builtins()->StoreIC_Initialize_Strict() |
- : isolate()->builtins()->StoreIC_Initialize(); |
- CallCode(ic, RelocInfo::CODE_TARGET_CONTEXT, instr); |
+ Handle<Code> ic = StoreIC::initialize_stub(isolate(), |
+ instr->strict_mode_flag(), |
+ CONTEXTUAL); |
+ CallCode(ic, RelocInfo::CODE_TARGET, instr); |
} |
@@ -3324,7 +3323,7 @@ void LCodeGen::DoLoadNamedGeneric(LLoadNamedGeneric* instr) { |
ASSERT(ToRegister(instr->result()).is(eax)); |
__ mov(ecx, instr->name()); |
- Handle<Code> ic = isolate()->builtins()->LoadIC_Initialize(); |
+ Handle<Code> ic = LoadIC::initialize_stub(isolate(), NOT_CONTEXTUAL); |
CallCode(ic, RelocInfo::CODE_TARGET, instr); |
} |
@@ -4237,11 +4236,10 @@ void LCodeGen::DoCallNamed(LCallNamed* instr) { |
ASSERT(ToRegister(instr->result()).is(eax)); |
int arity = instr->arity(); |
- RelocInfo::Mode mode = RelocInfo::CODE_TARGET; |
Handle<Code> ic = |
- isolate()->stub_cache()->ComputeCallInitialize(arity, mode); |
+ isolate()->stub_cache()->ComputeCallInitialize(arity, NOT_CONTEXTUAL); |
__ mov(ecx, instr->name()); |
- CallCode(ic, mode, instr); |
+ CallCode(ic, RelocInfo::CODE_TARGET, instr); |
} |
@@ -4266,11 +4264,10 @@ void LCodeGen::DoCallGlobal(LCallGlobal* instr) { |
ASSERT(ToRegister(instr->result()).is(eax)); |
int arity = instr->arity(); |
- RelocInfo::Mode mode = RelocInfo::CODE_TARGET_CONTEXT; |
Handle<Code> ic = |
- isolate()->stub_cache()->ComputeCallInitialize(arity, mode); |
+ isolate()->stub_cache()->ComputeCallInitialize(arity, CONTEXTUAL); |
__ mov(ecx, instr->name()); |
- CallCode(ic, mode, instr); |
+ CallCode(ic, RelocInfo::CODE_TARGET, instr); |
} |
@@ -4502,9 +4499,9 @@ void LCodeGen::DoStoreNamedGeneric(LStoreNamedGeneric* instr) { |
ASSERT(ToRegister(instr->value()).is(eax)); |
__ mov(ecx, instr->name()); |
- Handle<Code> ic = (instr->strict_mode_flag() == kStrictMode) |
- ? isolate()->builtins()->StoreIC_Initialize_Strict() |
- : isolate()->builtins()->StoreIC_Initialize(); |
+ Handle<Code> ic = StoreIC::initialize_stub(isolate(), |
+ instr->strict_mode_flag(), |
+ NOT_CONTEXTUAL); |
CallCode(ic, RelocInfo::CODE_TARGET, instr); |
} |