Index: src/x64/lithium-codegen-x64.cc |
diff --git a/src/x64/lithium-codegen-x64.cc b/src/x64/lithium-codegen-x64.cc |
index 7c9949a1fad8da5b441e7ecd79d96ab41dbea073..e3fad621b03f1becb863e4fdac8da2a74c6f1a82 100644 |
--- a/src/x64/lithium-codegen-x64.cc |
+++ b/src/x64/lithium-codegen-x64.cc |
@@ -2714,10 +2714,9 @@ void LCodeGen::DoLoadGlobalGeneric(LLoadGlobalGeneric* instr) { |
ASSERT(ToRegister(instr->result()).is(rax)); |
__ Move(rcx, 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); |
} |
@@ -2753,10 +2752,10 @@ void LCodeGen::DoStoreGlobalGeneric(LStoreGlobalGeneric* instr) { |
ASSERT(ToRegister(instr->value()).is(rax)); |
__ Move(rcx, 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); |
} |
@@ -2853,7 +2852,7 @@ void LCodeGen::DoLoadNamedGeneric(LLoadNamedGeneric* instr) { |
ASSERT(ToRegister(instr->result()).is(rax)); |
__ Move(rcx, instr->name()); |
- Handle<Code> ic = isolate()->builtins()->LoadIC_Initialize(); |
+ Handle<Code> ic = LoadIC::initialize_stub(isolate(), NOT_CONTEXTUAL); |
CallCode(ic, RelocInfo::CODE_TARGET, instr); |
} |
@@ -3786,11 +3785,10 @@ void LCodeGen::DoCallNamed(LCallNamed* instr) { |
ASSERT(ToRegister(instr->result()).is(rax)); |
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); |
__ Move(rcx, instr->name()); |
- CallCode(ic, mode, instr); |
+ CallCode(ic, RelocInfo::CODE_TARGET, instr); |
} |
@@ -3814,11 +3812,10 @@ void LCodeGen::DoCallGlobal(LCallGlobal* instr) { |
ASSERT(ToRegister(instr->context()).is(rsi)); |
ASSERT(ToRegister(instr->result()).is(rax)); |
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); |
__ Move(rcx, instr->name()); |
- CallCode(ic, mode, instr); |
+ CallCode(ic, RelocInfo::CODE_TARGET, instr); |
} |
@@ -4041,9 +4038,9 @@ void LCodeGen::DoStoreNamedGeneric(LStoreNamedGeneric* instr) { |
ASSERT(ToRegister(instr->value()).is(rax)); |
__ Move(rcx, instr->hydrogen()->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); |
} |