Merge V8 at 3.9.24.29

Bug: 6552361
Change-Id: Ic75bc91849fed7b20846e9c10e2c1ffcc5239da5
diff --git a/src/scopes.h b/src/scopes.h
index d315b7e..174dbdb 100644
--- a/src/scopes.h
+++ b/src/scopes.h
@@ -369,13 +369,16 @@
   bool AllowsLazyCompilation() const;
 
   // True if we can lazily recompile functions with this scope.
-  bool allows_lazy_recompilation() const {
-    return !force_eager_compilation_;
-  }
+  bool AllowsLazyRecompilation() const;
 
   // True if the outer context of this scope is always the global context.
   bool HasTrivialOuterContext() const;
 
+  // True if this scope is inside a with scope and all declaration scopes
+  // between them have empty contexts. Such declaration scopes become
+  // invisible during scope info deserialization.
+  bool TrivialDeclarationScopesBeforeWithScope() const;
+
   // The number of contexts between this and scope; zero if this == scope.
   int ContextChainLength(Scope* scope);