Index: src/full-codegen/ia32/full-codegen-ia32.cc |
diff --git a/src/full-codegen/ia32/full-codegen-ia32.cc b/src/full-codegen/ia32/full-codegen-ia32.cc |
index add71bc879454a9baad036d0a656f972b7f64dce..97c6d8e455c655bdaf33e451cded29f4345dab02 100644 |
--- a/src/full-codegen/ia32/full-codegen-ia32.cc |
+++ b/src/full-codegen/ia32/full-codegen-ia32.cc |
@@ -1144,8 +1144,11 @@ |
// flag, we need to use the runtime function so that the new function |
// we are creating here gets a chance to have its code optimized and |
// doesn't just get a copy of the existing unoptimized code. |
- if (!FLAG_always_opt && !FLAG_prepare_always_opt && !pretenure && |
- scope()->is_function_scope()) { |
+ if (!FLAG_always_opt && |
+ !FLAG_prepare_always_opt && |
+ !pretenure && |
+ scope()->is_function_scope() && |
+ info->num_literals() == 0) { |
FastNewClosureStub stub(isolate(), info->language_mode(), info->kind()); |
__ mov(ebx, Immediate(info)); |
__ CallStub(&stub); |