Index: src/ia32/lithium-codegen-ia32.cc |
diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc |
index f26eeac7740ee8c21877df3aafc1f354d53d7f68..cc479d5844f797f7f4be1e6b5a5128775d57af06 100644 |
--- a/src/ia32/lithium-codegen-ia32.cc |
+++ b/src/ia32/lithium-codegen-ia32.cc |
@@ -3202,10 +3202,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); |
} |
@@ -3234,10 +3233,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); |
} |
@@ -3356,7 +3355,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); |
} |
@@ -4302,11 +4301,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); |
} |
@@ -4331,11 +4329,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); |
} |
@@ -4567,9 +4564,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); |
} |