| Index: src/ia32/lithium-codegen-ia32.cc
|
| diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc
|
| index eb31d5aeeb339890dc7eb03f6f7b1f822d703720..400656b83883b8bbdfafd98bb0a3ce9f5bb45c27 100644
|
| --- a/src/ia32/lithium-codegen-ia32.cc
|
| +++ b/src/ia32/lithium-codegen-ia32.cc
|
| @@ -2055,7 +2055,7 @@ void LCodeGen::DoLoadGlobalGeneric(LLoadGlobalGeneric* instr) {
|
| }
|
|
|
|
|
| -void LCodeGen::DoStoreGlobal(LStoreGlobal* instr) {
|
| +void LCodeGen::DoStoreGlobalCell(LStoreGlobalCell* instr) {
|
| Register value = ToRegister(instr->InputAt(0));
|
| Operand cell_operand = Operand::Cell(instr->hydrogen()->cell());
|
|
|
| @@ -2073,6 +2073,18 @@ void LCodeGen::DoStoreGlobal(LStoreGlobal* instr) {
|
| }
|
|
|
|
|
| +void LCodeGen::DoStoreGlobalGeneric(LStoreGlobalGeneric* instr) {
|
| + ASSERT(ToRegister(instr->context()).is(esi));
|
| + ASSERT(ToRegister(instr->global_object()).is(edx));
|
| + ASSERT(ToRegister(instr->value()).is(eax));
|
| + ASSERT(ToRegister(instr->result()).is(eax));
|
| +
|
| + __ mov(ecx, instr->name());
|
| + Handle<Code> ic = isolate()->builtins()->StoreIC_Initialize();
|
| + CallCode(ic, RelocInfo::CODE_TARGET_CONTEXT, instr);
|
| +}
|
| +
|
| +
|
| void LCodeGen::DoLoadContextSlot(LLoadContextSlot* instr) {
|
| Register context = ToRegister(instr->context());
|
| Register result = ToRegister(instr->result());
|
|
|