| Index: src/mips/lithium-codegen-mips.cc
|
| diff --git a/src/mips/lithium-codegen-mips.cc b/src/mips/lithium-codegen-mips.cc
|
| index ca1d2b5bb524b0e8d01fca52e55c88703578a9fb..6123b13f6274dcee6a7a4f4a3cf48d3fe022f862 100644
|
| --- a/src/mips/lithium-codegen-mips.cc
|
| +++ b/src/mips/lithium-codegen-mips.cc
|
| @@ -157,7 +157,7 @@ bool LCodeGen::GeneratePrologue() {
|
| // with undefined when called as functions (without an explicit
|
| // receiver object). r5 is zero for method calls and non-zero for
|
| // function calls.
|
| - if (info_->is_strict_mode() || info_->is_native()) {
|
| + if (!info_->is_classic_mode() || info_->is_native()) {
|
| Label ok;
|
| __ Branch(&ok, eq, t1, Operand(zero_reg));
|
|
|
| @@ -2172,7 +2172,7 @@ void LCodeGen::DoStoreGlobalGeneric(LStoreGlobalGeneric* instr) {
|
| ASSERT(ToRegister(instr->value()).is(a0));
|
|
|
| __ li(a2, Operand(instr->name()));
|
| - Handle<Code> ic = instr->strict_mode()
|
| + Handle<Code> ic = (instr->strict_mode_flag() == kStrictMode)
|
| ? isolate()->builtins()->StoreIC_Initialize_Strict()
|
| : isolate()->builtins()->StoreIC_Initialize();
|
| CallCode(ic, RelocInfo::CODE_TARGET_CONTEXT, instr);
|
| @@ -3271,7 +3271,7 @@ void LCodeGen::DoStoreNamedGeneric(LStoreNamedGeneric* instr) {
|
|
|
| // Name is always in a2.
|
| __ li(a2, Operand(instr->name()));
|
| - Handle<Code> ic = instr->strict_mode()
|
| + Handle<Code> ic = (instr->strict_mode_flag() == kStrictMode)
|
| ? isolate()->builtins()->StoreIC_Initialize_Strict()
|
| : isolate()->builtins()->StoreIC_Initialize();
|
| CallCode(ic, RelocInfo::CODE_TARGET, instr);
|
| @@ -3452,7 +3452,7 @@ void LCodeGen::DoStoreKeyedGeneric(LStoreKeyedGeneric* instr) {
|
| ASSERT(ToRegister(instr->key()).is(a1));
|
| ASSERT(ToRegister(instr->value()).is(a0));
|
|
|
| - Handle<Code> ic = instr->strict_mode()
|
| + Handle<Code> ic = (instr->strict_mode_flag() == kStrictMode)
|
| ? isolate()->builtins()->KeyedStoreIC_Initialize_Strict()
|
| : isolate()->builtins()->KeyedStoreIC_Initialize();
|
| CallCode(ic, RelocInfo::CODE_TARGET, instr);
|
| @@ -4338,7 +4338,7 @@ void LCodeGen::DoFunctionLiteral(LFunctionLiteral* instr) {
|
| Handle<SharedFunctionInfo> shared_info = instr->shared_info();
|
| bool pretenure = instr->hydrogen()->pretenure();
|
| if (!pretenure && shared_info->num_literals() == 0) {
|
| - FastNewClosureStub stub(shared_info->strict_mode_flag());
|
| + FastNewClosureStub stub(shared_info->language_mode());
|
| __ li(a1, Operand(shared_info));
|
| __ push(a1);
|
| CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr);
|
|
|