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

Side by Side Diff: runtime/vm/flow_graph_builder.cc

Issue 2035073002: Fix speculative inlining in precompilation. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: update status Created 4 years, 6 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 | « runtime/vm/aot_optimizer.cc ('k') | tests/co19/co19-runtime.status » ('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 (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/flow_graph_builder.h" 5 #include "vm/flow_graph_builder.h"
6 6
7 #include "lib/invocation_mirror.h" 7 #include "lib/invocation_mirror.h"
8 #include "vm/ast_printer.h" 8 #include "vm/ast_printer.h"
9 #include "vm/bit_vector.h" 9 #include "vm/bit_vector.h"
10 #include "vm/compiler.h" 10 #include "vm/compiler.h"
(...skipping 2788 matching lines...) Expand 10 before | Expand all | Expand 10 after
2799 arguments, 2799 arguments,
2800 owner()->ic_data_array()); 2800 owner()->ic_data_array());
2801 const intptr_t result_cid = GetResultCidOfListFactory(node); 2801 const intptr_t result_cid = GetResultCidOfListFactory(node);
2802 if (result_cid != kDynamicCid) { 2802 if (result_cid != kDynamicCid) {
2803 call->set_result_cid(result_cid); 2803 call->set_result_cid(result_cid);
2804 call->set_is_known_list_constructor(true); 2804 call->set_is_known_list_constructor(true);
2805 // Recognized fixed length array factory must have two arguments: 2805 // Recognized fixed length array factory must have two arguments:
2806 // (0) type-arguments, (1) length. 2806 // (0) type-arguments, (1) length.
2807 ASSERT(!LoadFieldInstr::IsFixedLengthArrayCid(result_cid) || 2807 ASSERT(!LoadFieldInstr::IsFixedLengthArrayCid(result_cid) ||
2808 arguments->length() == 2); 2808 arguments->length() == 2);
2809 } else if (node->constructor().recognized_kind() !=
2810 MethodRecognizer::kUnknown) {
2811 call->set_result_cid(MethodRecognizer::ResultCid(node->constructor()));
2809 } 2812 }
2810 ReturnDefinition(call); 2813 ReturnDefinition(call);
2811 return; 2814 return;
2812 } 2815 }
2813 // t_n contains the allocated and initialized object. 2816 // t_n contains the allocated and initialized object.
2814 // t_n <- AllocateObject(class) 2817 // t_n <- AllocateObject(class)
2815 // t_n+1 <- ctor-arg 2818 // t_n+1 <- ctor-arg
2816 // t_n+2... <- constructor arguments start here 2819 // t_n+2... <- constructor arguments start here
2817 // StaticCall(constructor, t_n+1, t_n+2, ...) 2820 // StaticCall(constructor, t_n+1, t_n+2, ...)
2818 // No need to preserve allocated value (simpler than in ValueGraphVisitor). 2821 // No need to preserve allocated value (simpler than in ValueGraphVisitor).
(...skipping 1759 matching lines...) Expand 10 before | Expand all | Expand 10 after
4578 block_marks); 4581 block_marks);
4579 ASSERT(found); 4582 ASSERT(found);
4580 } 4583 }
4581 4584
4582 4585
4583 void FlowGraphBuilder::Bailout(const char* reason) const { 4586 void FlowGraphBuilder::Bailout(const char* reason) const {
4584 parsed_function_.Bailout("FlowGraphBuilder", reason); 4587 parsed_function_.Bailout("FlowGraphBuilder", reason);
4585 } 4588 }
4586 4589
4587 } // namespace dart 4590 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/vm/aot_optimizer.cc ('k') | tests/co19/co19-runtime.status » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698