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

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

Issue 2771013002: Add more safe points in compiler (Closed)
Patch Set: Fix test that 'parses' verbose GC output Created 3 years, 8 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/flow_graph.cc ('k') | runtime/vm/heap.h » ('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) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 #if !defined(DART_PRECOMPILED_RUNTIME) 4 #if !defined(DART_PRECOMPILED_RUNTIME)
5 #include "vm/flow_graph_inliner.h" 5 #include "vm/flow_graph_inliner.h"
6 6
7 #include "vm/aot_optimizer.h" 7 #include "vm/aot_optimizer.h"
8 #include "vm/precompiler.h" 8 #include "vm/precompiler.h"
9 #include "vm/block_scheduler.h" 9 #include "vm/block_scheduler.h"
10 #include "vm/branch_optimizer.h" 10 #include "vm/branch_optimizer.h"
(...skipping 603 matching lines...) Expand 10 before | Expand all | Expand 10 after
614 // Inline call sites at the current depth. 614 // Inline call sites at the current depth.
615 InlineInstanceCalls(); 615 InlineInstanceCalls();
616 InlineStaticCalls(); 616 InlineStaticCalls();
617 InlineClosureCalls(); 617 InlineClosureCalls();
618 // Increment the inlining depths. Checked before subsequent inlining. 618 // Increment the inlining depths. Checked before subsequent inlining.
619 ++inlining_depth_; 619 ++inlining_depth_;
620 if (inlined_recursive_call_) { 620 if (inlined_recursive_call_) {
621 ++inlining_recursion_depth_; 621 ++inlining_recursion_depth_;
622 inlined_recursive_call_ = false; 622 inlined_recursive_call_ = false;
623 } 623 }
624 thread()->CheckForSafepoint();
624 } 625 }
625 626
626 collected_call_sites_ = NULL; 627 collected_call_sites_ = NULL;
627 inlining_call_sites_ = NULL; 628 inlining_call_sites_ = NULL;
628 } 629 }
629 630
630 bool inlined() const { return inlined_; } 631 bool inlined() const { return inlined_; }
631 632
632 double GrowthFactor() const { 633 double GrowthFactor() const {
633 return static_cast<double>(inlined_size_) / 634 return static_cast<double>(inlined_size_) /
(...skipping 3190 matching lines...) Expand 10 before | Expand all | Expand 10 after
3824 } 3825 }
3825 3826
3826 default: 3827 default:
3827 return false; 3828 return false;
3828 } 3829 }
3829 } 3830 }
3830 3831
3831 3832
3832 } // namespace dart 3833 } // namespace dart
3833 #endif // !defined(DART_PRECOMPILED_RUNTIME) 3834 #endif // !defined(DART_PRECOMPILED_RUNTIME)
OLDNEW
« no previous file with comments | « runtime/vm/flow_graph.cc ('k') | runtime/vm/heap.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698