Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1331)

Side by Side Diff: src/crankshaft/hydrogen.cc

Issue 2632123006: Reland: [Parse] ParseInfo owns the parsing Zone. (Closed)
Patch Set: Rebase Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/crankshaft/hydrogen.h ('k') | src/debug/debug-scopes.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/crankshaft/hydrogen.h" 5 #include "src/crankshaft/hydrogen.h"
6 6
7 #include <memory> 7 #include <memory>
8 #include <sstream> 8 #include <sstream>
9 9
10 #include "src/allocation-site-scopes.h" 10 #include "src/allocation-site-scopes.h"
(...skipping 8023 matching lines...) Expand 10 before | Expand all | Expand 10 after
8034 if (inlined_count_ > Min(FLAG_max_inlined_nodes_cumulative, 8034 if (inlined_count_ > Min(FLAG_max_inlined_nodes_cumulative,
8035 kUnlimitedMaxInlinedNodesCumulative)) { 8035 kUnlimitedMaxInlinedNodesCumulative)) {
8036 TraceInline(target, caller, "cumulative AST node limit reached"); 8036 TraceInline(target, caller, "cumulative AST node limit reached");
8037 return false; 8037 return false;
8038 } 8038 }
8039 8039
8040 // Parse and allocate variables. 8040 // Parse and allocate variables.
8041 // Use the same AstValueFactory for creating strings in the sub-compilation 8041 // Use the same AstValueFactory for creating strings in the sub-compilation
8042 // step, but don't transfer ownership to target_info. 8042 // step, but don't transfer ownership to target_info.
8043 Handle<SharedFunctionInfo> target_shared(target->shared()); 8043 Handle<SharedFunctionInfo> target_shared(target->shared());
8044 ParseInfo parse_info(zone(), target_shared); 8044 ParseInfo parse_info(target_shared, top_info()->parse_info()->zone_shared());
8045 parse_info.set_ast_value_factory( 8045 parse_info.set_ast_value_factory(
8046 top_info()->parse_info()->ast_value_factory()); 8046 top_info()->parse_info()->ast_value_factory());
8047 parse_info.set_ast_value_factory_owned(false); 8047 parse_info.set_ast_value_factory_owned(false);
8048 8048
8049 CompilationInfo target_info(&parse_info, target); 8049 CompilationInfo target_info(&parse_info, target);
8050 8050
8051 if (inlining_kind != CONSTRUCT_CALL_RETURN && 8051 if (inlining_kind != CONSTRUCT_CALL_RETURN &&
8052 IsClassConstructor(target_shared->kind())) { 8052 IsClassConstructor(target_shared->kind())) {
8053 TraceInline(target, caller, "target is classConstructor"); 8053 TraceInline(target, caller, "target is classConstructor");
8054 return false; 8054 return false;
(...skipping 4973 matching lines...) Expand 10 before | Expand all | Expand 10 after
13028 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); 13028 isolate()->GetHTracer()->TraceHydrogen(name(), graph_);
13029 } 13029 }
13030 13030
13031 #ifdef DEBUG 13031 #ifdef DEBUG
13032 graph_->Verify(false); // No full verify. 13032 graph_->Verify(false); // No full verify.
13033 #endif 13033 #endif
13034 } 13034 }
13035 13035
13036 } // namespace internal 13036 } // namespace internal
13037 } // namespace v8 13037 } // namespace v8
OLDNEW
« no previous file with comments | « src/crankshaft/hydrogen.h ('k') | src/debug/debug-scopes.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698