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 8014 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8025 if (inlined_count_ > Min(FLAG_max_inlined_nodes_cumulative, | 8025 if (inlined_count_ > Min(FLAG_max_inlined_nodes_cumulative, |
8026 kUnlimitedMaxInlinedNodesCumulative)) { | 8026 kUnlimitedMaxInlinedNodesCumulative)) { |
8027 TraceInline(target, caller, "cumulative AST node limit reached"); | 8027 TraceInline(target, caller, "cumulative AST node limit reached"); |
8028 return false; | 8028 return false; |
8029 } | 8029 } |
8030 | 8030 |
8031 // Parse and allocate variables. | 8031 // Parse and allocate variables. |
8032 // Use the same AstValueFactory for creating strings in the sub-compilation | 8032 // Use the same AstValueFactory for creating strings in the sub-compilation |
8033 // step, but don't transfer ownership to target_info. | 8033 // step, but don't transfer ownership to target_info. |
8034 Handle<SharedFunctionInfo> target_shared(target->shared()); | 8034 Handle<SharedFunctionInfo> target_shared(target->shared()); |
8035 ParseInfo parse_info(target_shared, top_info()->parse_info()->zone_shared()); | 8035 ParseInfo parse_info(zone(), target_shared); |
8036 parse_info.set_ast_value_factory( | 8036 parse_info.set_ast_value_factory( |
8037 top_info()->parse_info()->ast_value_factory()); | 8037 top_info()->parse_info()->ast_value_factory()); |
8038 parse_info.set_ast_value_factory_owned(false); | 8038 parse_info.set_ast_value_factory_owned(false); |
8039 | 8039 |
8040 CompilationInfo target_info(&parse_info, target); | 8040 CompilationInfo target_info(&parse_info, target); |
8041 | 8041 |
8042 if (inlining_kind != CONSTRUCT_CALL_RETURN && | 8042 if (inlining_kind != CONSTRUCT_CALL_RETURN && |
8043 IsClassConstructor(target_shared->kind())) { | 8043 IsClassConstructor(target_shared->kind())) { |
8044 TraceInline(target, caller, "target is classConstructor"); | 8044 TraceInline(target, caller, "target is classConstructor"); |
8045 return false; | 8045 return false; |
(...skipping 4966 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
13012 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); | 13012 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); |
13013 } | 13013 } |
13014 | 13014 |
13015 #ifdef DEBUG | 13015 #ifdef DEBUG |
13016 graph_->Verify(false); // No full verify. | 13016 graph_->Verify(false); // No full verify. |
13017 #endif | 13017 #endif |
13018 } | 13018 } |
13019 | 13019 |
13020 } // namespace internal | 13020 } // namespace internal |
13021 } // namespace v8 | 13021 } // namespace v8 |
OLD | NEW |