Commit Graph

713 Commits

Author SHA1 Message Date
John McCutchan 2ecf40450c Make function-ref only show a link for Dart functions
BUG=

Review URL: https://codereview.chromium.org//1289803007 .
2015-08-12 16:13:26 -07:00
John McCutchan 7af879a084 Fix time span in profiler
BUG=

Review URL: https://codereview.chromium.org//1287033006 .
2015-08-12 16:03:27 -07:00
John McCutchan 8e91f1a7c3 Fix heap map
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1291873002 .
2015-08-12 15:31:17 -07:00
John McCutchan f9944c1c4c Synchronize isolate dropdown with isolate summary
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1285143004 .
2015-08-12 15:21:06 -07:00
Ryan Macnak 82b4f03dec Fix overly-strict parameter checking of _getCallSiteData.
Ensure padding between columns in allocation profile.

Desaturate the red used for methods with optimization issues.

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1287043007 .
2015-08-12 15:20:46 -07:00
John McCutchan 10de20f230 Remove load graph from isolate
BUG=

Review URL: https://codereview.chromium.org//1290643005 .
2015-08-12 15:13:11 -07:00
Ryan Macnak 919f79e044 Fix links to script + line.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1286943005 .
2015-08-12 12:42:52 -07:00
Ryan Macnak 62dbce8555 Make declaration annotations direct links; update annotations after the library's declarations are fully loaded.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1289913002 .
2015-08-12 12:37:11 -07:00
John McCutchan d0f216eb30 Suppress stream subscription error
- Hides a scary exception popup in the debugger in Dartium (where stdout and stderr streams are not available).

R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1289923002 .
2015-08-12 11:11:15 -07:00
Todd Turnidge cc981c8246 Don't use %p when generating disassembly in vm service.
Evidentally it is platform dependent -- it seems to include the 0x
prefix on mac but not on windows.  I've switched to using %" Px "
instead.

This will fix bug 24038.

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1282993002 .
2015-08-11 11:22:55 -07:00
John McCutchan a8e2180b78 Fix short jump address calculation in x64 disassembler
- Make Observatory robust to weird jump addresses.
- Use signed address offset when computing short jump target address.

R=fschneider@google.com, srdjan@google.com

Review URL: https://codereview.chromium.org//1273223004 .
2015-08-11 06:17:58 -07:00
Ryan Macnak 73cfbce0bc Minor Observatory UI tweaks.
- Display the root script on a library's page.
 - Display the root library's root script on the isolate page.
 - Display a script inset on a field's page.
 - Fix switching between singe- and multi-line evalators.
 - Display count of open ports.
 - Ensure fields are annoated with a field reference rather than a reference to an implicit getter or setter.
 - Annotate library, import, export, part, part of.

BUG=
R=turnidge@google.com

Review URL: https://codereview.chromium.org//1275173003 .
2015-08-10 15:57:52 -07:00
Todd Turnidge 256b044857 Allow stepping when paused at isolate start.
Fix tests.

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1285643004 .
2015-08-10 14:26:01 -07:00
John McCutchan 2306fd2fcc Don't analyze some tests that depend on bleeding edge SDK support
BUG=

Review URL: https://codereview.chromium.org//1273373003 .
2015-08-10 10:44:02 -07:00
Todd Turnidge 64216a8cd0 Revert "Allow stepping when paused at isolate start."
This reverts commit 319214f58b.

BUG=

Review URL: https://codereview.chromium.org//1286493003 .
2015-08-10 10:29:31 -07:00
Todd Turnidge 319214f58b Allow stepping when paused at isolate start.
BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1276243004 .
2015-08-10 09:52:55 -07:00
Todd Turnidge a5c0dbfffe Fix the continue command.
BUG=

Review URL: https://codereview.chromium.org//1271183004 .
2015-08-07 13:28:11 -07:00
Todd Turnidge 5b6136fdfb Refactor the set command in Observatory debugger.
- set with 0/1 args now can be used to query current setting value
- added completion for set command
- added up-is-down option to provide gdb-like behavior for up/down commands

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1277173004 .
2015-08-07 13:22:21 -07:00
Ryan Macnak 447e497ac9 Unpack the heap snapshot from a representation of var ints and addresses to a representation of fixed ints and node ids early in heap analysis. Somewhat increases speed finding the dominator tree and greatly increases speed grouping nodes by class.
On a 190MB pub heap,
Dominator tree (dart2js): 165s -> 64s
Grouping (dart2js): 159s -> 3s
Memory (dartium): 156MB -> 169MB

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1278653004 .
2015-08-07 12:51:04 -07:00
John McCutchan 2b2d4cf1bf Make allocation profile configurable (tags, function v. code)
- Add sample-buffer-control and stack-trace-tree-config elements to class view to control how the allocation profile is displayed.
- Unrelated: Stop showing I/O/U next to functions in the profile.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1273323002 .
2015-08-07 12:46:19 -07:00
Todd Turnidge 97a4ae8f94 Add hotkeys to Observatory debugger.
Add 'cls' command to clear the console.

From 'help hotkeys':

List of hotkeys:

[TAB]        - complete a command
[Up Arrow]   - history previous
[Down Arrow] - history next

[Page Up]    - move up one frame
[Page Down]  - move down one frame

[F7]         - continue execution of the current isolate
[Ctrl ;]     - pause execution of the current isolate

[F8]         - toggle breakpoint at current location
[F9]         - next
[F10]        - step

BUG=24010
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1270283003 .
2015-08-07 10:38:40 -07:00
Ryan Macnak e3d7903862 Add timing prints to object group to get a baseline.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1272823006 .
2015-08-07 10:22:11 -07:00
Todd Turnidge 49a61ba3f5 Allow users to remove evaluation results.
BUG=20555
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1275163002 .
2015-08-06 17:08:33 -07:00
Todd Turnidge 38b9945cfd Improve display of library dependency information.
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1276013002 .
2015-08-06 12:55:33 -07:00
Todd Turnidge 227010d9dc Order the vm's isolate list by isolate start time.
This has the effect of making isolate lists more predictable for the user.

BUG=23717
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1275713002 .
2015-08-06 10:17:07 -07:00
Todd Turnidge f73b8aa019 Resolve some input focus issues for the debugger.
We were dropping clicks with selection type "None" on the floor, mistakenly.

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1275543004 .
2015-08-05 12:43:20 -07:00
Todd Turnidge 401075fbbf Remember when a variable has been expanded/unexpanded in the debugger.
BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1269083006 .
2015-08-03 14:54:23 -07:00
Todd Turnidge fa1d1e9faf Observatory fixes:
- Fix bug where we incorrectly tell the user to use "anext".
- Allow debugger input box to retain focus when curly-blocks are expanded.

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1265153005 .
2015-08-03 13:16:30 -07:00
John McCutchan 868109bf97 Auto scroll debugger console text only when already scrolled down
R=turnidge@google.com

Review URL: https://codereview.chromium.org//1263853004 .
2015-08-03 12:50:50 -07:00
John McCutchan 33831aaa6b Add log support to debugger
- Add 'log' command to control log level.
- Manage Logging stream subscription whenever isolate changes.
- Rename _VMStreamPrinter to _ConsoleStreamPrinter.
- Pipe log events to _ConsoleStreamPrinter.

R=turnidge@google.com

Review URL: https://codereview.chromium.org//1258063005 .
2015-08-03 12:42:59 -07:00
John McCutchan 319b274362 Stop displaying inline, optimized, and unoptimized tags next to functions in profile tree
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1269843007 .
2015-07-31 15:04:55 -07:00
John McCutchan 390a44ccdf Make Observatory analyzer clean
BUG=

Review URL: https://codereview.chromium.org//1267033002 .
2015-07-31 14:57:55 -07:00
John McCutchan fc2d849cd5 Fix http requests and the crash dump RPC
- Fix HTTP and crash dump service requests by giving them a non-null id.
- Add basic heartbeat test for _getCrashDump RPC over HTTP.
- Fix some analyzer warnings.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1266943005 .
2015-07-31 14:38:04 -07:00
John McCutchan 4e9716ee40 Update view footer with github bug report url
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1254413011 .
2015-07-31 14:23:45 -07:00
John McCutchan de035901a1 Introduce two utility elements for the cpu profiler
- Add <sample-buffer-control> which manages fetching a sample buffer from an isolate.
- Remove duplicate code by using <sample-buffer-control> in both the tree and table profile views.
- Add <stack-trace-tree-config> which manages how a stack trace tree should be displayed (function or code objects, bottom up or top down).
- Remove duplicate code by using <stack-trace-tree-config> in both the tree and table profile views.

This is the first of many CLs refactoring the CPU profile related code in Observatory. This introduces some naming inconsistencies (CpuProfile vs. SampleBuffer) that will converge to SampleBuffer over time.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1266193003 .
2015-07-31 14:19:17 -07:00
Rico Wind 93ec16c34c Nuke some whitespace in observatory
R=johnmccutchan@google.com
BUG=

Review URL: https://codereview.chromium.org//1255273007 .
2015-07-30 17:47:50 +02:00
Natalie Weizenbaum 61ea0618ce Support JSON-RPC 2.0-compatible VM service events.
This adds a parameter to streamListen that will cause it to produce JSON-RPC
2.0-compatible events.

R=turnidge@google.com

Review URL: https://codereview.chromium.org//1257943003 .
2015-07-28 17:17:40 -07:00
John McCutchan d9394ac865 Fix exception on first navigation to metrics page
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1262003002 .
2015-07-28 16:13:09 -07:00
Ryan Macnak 8c98455ab5 Retaining path improvements.
- Don't answer retaining paths that go through ICData.
 - Associate edge labels with the referer instead of the referent.
 - Give edge labels for VM classes (offsets only).
 - Make is possible to distinguish closures and functions from their refs.

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1246073005 .
2015-07-28 15:56:10 -07:00
John McCutchan d3154f4247 Logging page
- Per isolate logging page.
- Drop down to control log level threshold.
- Console area where messages are displayed.
- UI test.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1250853006 .
2015-07-22 14:33:13 -07:00
Ryan Macnak f26050ce08 Automatically step past async state-machine switch for 'anext'.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1244983002 .
2015-07-21 10:36:00 -07:00
John McCutchan 9a90002eda Add missing toInt call
BUG=

Review URL: https://codereview.chromium.org//1243893003 .
2015-07-21 08:48:30 -07:00
John McCutchan f818f9dc0f Support piping log data over the service protocol
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1241683005 .
2015-07-21 07:54:46 -07:00
Ryan Macnak 7663e4a894 Rename 'astep' to 'anext' to better reflect its semantics.
R=turnidge@google.com

Review URL: https://codereview.chromium.org//1243523002 .
2015-07-16 17:34:34 -07:00
Ryan Macnak 0979a7b23e Async-step, first cut.
Also fix inclusion of internal variables from outer scopes in var descriptors.

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1241673003 .
2015-07-16 13:05:37 -07:00
John McCutchan 4747a63ad6 Factor cpu profile tree into separate element and expose allocation tracing UI
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1241653002 .
2015-07-14 13:56:45 -07:00
Todd Turnidge e4684c7627 Provide stdout and stderr output in the Observatory debugger.
Implement two new streams, 'Stdout' and 'Stderr' in the service protocol.

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1232193003 .
2015-07-14 12:54:07 -07:00
Todd Turnidge a02c7694c5 Make random clicks in the debugger give the command line input focus.
If the user selects a range, respect that.

Add some inner spacing on the command line input box.  Makes it feel
less claustrophobic.

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1233053002 .
2015-07-14 12:35:32 -07:00
John McCutchan a92a3c8af3 Expose allocation tracing over service protocol
BUG=
R=turnidge@google.com

Review URL: https://codereview.chromium.org//1231603008 .
2015-07-14 11:41:57 -07:00
John McCutchan 07a927e74d Do not report Observatory analytics when running in Dart
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1236223002 .
2015-07-14 11:34:55 -07:00