| OLD | NEW |
| 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 | 4 |
| 5 #include "platform/utils.h" | 5 #include "platform/utils.h" |
| 6 | 6 |
| 7 #include "vm/allocation.h" | 7 #include "vm/allocation.h" |
| 8 #include "vm/atomic.h" | 8 #include "vm/atomic.h" |
| 9 #include "vm/code_patcher.h" | 9 #include "vm/code_patcher.h" |
| 10 #include "vm/isolate.h" | 10 #include "vm/isolate.h" |
| (...skipping 1355 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1366 } | 1366 } |
| 1367 { | 1367 { |
| 1368 ScopeStopwatch sw("CodeTableStream"); | 1368 ScopeStopwatch sw("CodeTableStream"); |
| 1369 // Serialize to JSON. | 1369 // Serialize to JSON. |
| 1370 JSONObject obj(stream); | 1370 JSONObject obj(stream); |
| 1371 obj.AddProperty("type", "Profile"); | 1371 obj.AddProperty("type", "Profile"); |
| 1372 obj.AddProperty("id", "profile"); | 1372 obj.AddProperty("id", "profile"); |
| 1373 obj.AddProperty("samples", samples); | 1373 obj.AddProperty("samples", samples); |
| 1374 obj.AddProperty("depth", static_cast<intptr_t>(FLAG_profile_depth)); | 1374 obj.AddProperty("depth", static_cast<intptr_t>(FLAG_profile_depth)); |
| 1375 obj.AddProperty("period", static_cast<intptr_t>(FLAG_profile_period)); | 1375 obj.AddProperty("period", static_cast<intptr_t>(FLAG_profile_period)); |
| 1376 obj.AddProperty("time_delta_micros", builder.TimeDeltaMicros()); | 1376 obj.AddProperty("timeSpan", |
| 1377 MicrosecondsToSeconds(builder.TimeDeltaMicros())); |
| 1377 { | 1378 { |
| 1378 JSONArray exclusive_trie(&obj, "exclusive_trie"); | 1379 JSONArray exclusive_trie(&obj, "exclusive_trie"); |
| 1379 CodeRegionTrieNode* root = build_trie.root(); | 1380 CodeRegionTrieNode* root = build_trie.root(); |
| 1380 ASSERT(root != NULL); | 1381 ASSERT(root != NULL); |
| 1381 root->PrintToJSONArray(&exclusive_trie); | 1382 root->PrintToJSONArray(&exclusive_trie); |
| 1382 } | 1383 } |
| 1383 JSONArray codes(&obj, "codes"); | 1384 JSONArray codes(&obj, "codes"); |
| 1384 for (intptr_t i = 0; i < live_code_table.Length(); i++) { | 1385 for (intptr_t i = 0; i < live_code_table.Length(); i++) { |
| 1385 CodeRegion* region = live_code_table.At(i); | 1386 CodeRegion* region = live_code_table.At(i); |
| 1386 ASSERT(region != NULL); | 1387 ASSERT(region != NULL); |
| (...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1684 ProfilerDartStackWalker stackWalker(sample); | 1685 ProfilerDartStackWalker stackWalker(sample); |
| 1685 stackWalker.walk(); | 1686 stackWalker.walk(); |
| 1686 } else { | 1687 } else { |
| 1687 // TODO(johnmccutchan): Support collecting only Dart frames with | 1688 // TODO(johnmccutchan): Support collecting only Dart frames with |
| 1688 // ProfilerNativeStackWalker. | 1689 // ProfilerNativeStackWalker. |
| 1689 } | 1690 } |
| 1690 } | 1691 } |
| 1691 } | 1692 } |
| 1692 | 1693 |
| 1693 } // namespace dart | 1694 } // namespace dart |
| OLD | NEW |