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

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

Issue 1013563002: CPU profile displayed in three tables with a tree (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 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 | Annotate | Revision Log
« no previous file with comments | « runtime/observatory/lib/src/elements/vm_view.html ('k') | no next file » | 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) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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/profiler_service.h" 5 #include "vm/profiler_service.h"
6 6
7 #include "vm/growable_array.h" 7 #include "vm/growable_array.h"
8 #include "vm/native_symbol.h" 8 #include "vm/native_symbol.h"
9 #include "vm/object.h" 9 #include "vm/object.h"
10 #include "vm/os.h" 10 #include "vm/os.h"
(...skipping 1746 matching lines...) Expand 10 before | Expand all | Expand 10 after
1757 bool top_frame, 1757 bool top_frame,
1758 bool exit_frame, 1758 bool exit_frame,
1759 intptr_t code_index) { 1759 intptr_t code_index) {
1760 const bool exclusive = top_frame && !exit_frame; 1760 const bool exclusive = top_frame && !exit_frame;
1761 if (!inclusive_tree_) { 1761 if (!inclusive_tree_) {
1762 // We process functions for the inclusive and exclusive trees. 1762 // We process functions for the inclusive and exclusive trees.
1763 // Only tick the function for the exclusive tree. 1763 // Only tick the function for the exclusive tree.
1764 function->Tick(exclusive, exclusive ? -1 : inclusive_serial); 1764 function->Tick(exclusive, exclusive ? -1 : inclusive_serial);
1765 } 1765 }
1766 function->AddCodeObjectIndex(code_index); 1766 function->AddCodeObjectIndex(code_index);
1767
1768 current = current->GetChild(function->index()); 1767 current = current->GetChild(function->index());
1769 current->AddCodeObjectIndex(code_index); 1768 current->AddCodeObjectIndex(code_index);
1770 if (top_frame) { 1769 if (top_frame) {
1771 if (!exit_frame || vm_tags_emitted()) { 1770 if (!exit_frame || vm_tags_emitted()) {
1772 // Only tick if this isn't an exit frame or VM tags are emitted. 1771 // Only tick if this isn't an exit frame or VM tags are emitted.
1773 current->Tick(); 1772 current->Tick();
1774 } 1773 }
1775 } else { 1774 } else {
1776 current->Tick(); 1775 current->Tick();
1777 } 1776 }
(...skipping 583 matching lines...) Expand 10 before | Expand all | Expand 10 after
2361 ASSERT(sample_buffer != NULL); 2360 ASSERT(sample_buffer != NULL);
2362 2361
2363 ClearProfileVisitor clear_profile(isolate); 2362 ClearProfileVisitor clear_profile(isolate);
2364 sample_buffer->VisitSamples(&clear_profile); 2363 sample_buffer->VisitSamples(&clear_profile);
2365 2364
2366 // Enable profile interrupts. 2365 // Enable profile interrupts.
2367 Profiler::BeginExecution(isolate); 2366 Profiler::BeginExecution(isolate);
2368 } 2367 }
2369 2368
2370 } // namespace dart 2369 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/observatory/lib/src/elements/vm_view.html ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698