Chromium Code Reviews

Unified Diff: src/x64/full-codegen-x64.cc

Issue 6677036: Fast path for strict closure creation. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 9 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Index: src/x64/full-codegen-x64.cc
diff --git a/src/x64/full-codegen-x64.cc b/src/x64/full-codegen-x64.cc
index 8b148624d86b8792207fac3e3125d273299a1e8f..c4ae1cd36c1c3becdd02fc6ad9a6b1114b1e2006 100644
--- a/src/x64/full-codegen-x64.cc
+++ b/src/x64/full-codegen-x64.cc
@@ -1041,9 +1041,8 @@ void FullCodeGenerator::EmitNewClosure(Handle<SharedFunctionInfo> info,
!FLAG_prepare_always_opt &&
!pretenure &&
scope()->is_function_scope() &&
- info->num_literals() == 0 &&
- !info->strict_mode()) { // Strict mode functions use slow path.
- FastNewClosureStub stub;
+ info->num_literals() == 0) {
+ FastNewClosureStub stub(info->strict_mode() ? kStrictMode : kNonStrictMode);
__ Push(info);
__ CallStub(&stub);
} else {

Powered by Google App Engine