OLD | NEW |
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 Loading... |
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(target_shared, top_info()->parse_info()->zone_shared()); | 8044 ParseInfo parse_info(zone(), target_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 Loading... |
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 |
OLD | NEW |