Index: src/ia32/lithium-codegen-ia32.cc |
diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc |
index 28f4679a41cf5e7c37fc7545a0283bdceac37271..6d97dafd3a022d96e45efa333f486e2b8ed8f885 100644 |
--- a/src/ia32/lithium-codegen-ia32.cc |
+++ b/src/ia32/lithium-codegen-ia32.cc |
@@ -3625,7 +3625,8 @@ void LCodeGen::DoFunctionLiteral(LFunctionLiteral* instr) { |
// space for nested functions that don't need literals cloning. |
Handle<SharedFunctionInfo> shared_info = instr->shared_info(); |
bool pretenure = instr->hydrogen()->pretenure(); |
- if (shared_info->num_literals() == 0 && !pretenure) { |
+ if (!pretenure && shared_info->num_literals() == 0 && |
+ !shared_info->strict_mode()) { |
FastNewClosureStub stub; |
__ push(Immediate(shared_info)); |
CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr, false); |