Index: src/arm/lithium-codegen-arm.cc |
diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc |
index aa252f1fcfd3c2baa5a8b63e798583ce3eb2bf4e..9c5963d596a3f642d267c7de75e5828864009b25 100644 |
--- a/src/arm/lithium-codegen-arm.cc |
+++ b/src/arm/lithium-codegen-arm.cc |
@@ -3720,7 +3720,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()) { // Strict mode functions use slow path. |
FastNewClosureStub stub; |
__ mov(r1, Operand(shared_info)); |
__ push(r1); |