koda@google.com
655b16b2d6
Include parent field/list index in retaining path.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//350403005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37956 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-02 20:37:56 +00:00
mlippautz@google.com
85ce6bffb9
Coverage data for single entities can be obtained by querying:
...
* script: isolate/id/script/name/coverage
* class: isolate/id/class/id/coverage
* library: isolate/id/library/id/coverage
Some numbers (curl on vm service):
* old base line (full coverage of dart:core + script computing faculty): ~1.2s
* generation for just the script file: ~12ms
* generation of dart:core (after executing fac script): ~150ms
* generation of dart:core-patch/array.dart: ~12ms
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//346003003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37676 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-25 00:06:53 +00:00
koda@google.com
bdab04234a
Class view: list all/sample instances on request.
...
The returned list can be filtered, etc., using its eval box.
Change VM code to only get reachable instances, using ObjectGraph.
BUG=dart:
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//351703002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37661 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-24 16:14:37 +00:00
koda@google.com
bd979f84d5
Send allocation stats with each class and show in class view.
...
For each class, if there are any allocations, shows current number of instances, shallow size, and the already existing link for retained size.
Also refactor code in ClassTable to reduce duplication.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//345543003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37566 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-20 20:17:42 +00:00
koda@google.com
a65edb0397
VM service: List all instances of a class.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//340673002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37465 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-18 20:55:09 +00:00
johnmccutchan@google.com
b67b9f0e20
Remove timers from Service_Isolate test because the internal C++ json parser can't handle floating point numbers.
...
Review URL: https://codereview.chromium.org//340843003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37462 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-18 20:16:52 +00:00
iposva@google.com
651ded192e
- Add possibility to redirect messages if they were not delivered.
...
- Prepare OOB handling for more than service messages.
- Do not use growable arrays when growing is not necessary.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//300223011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36772 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-28 21:58:33 +00:00
turnidge@google.com
8db11b79ac
Show flags in Observatory.
...
Add vm support for setting flags through vm service (UI coming soon).
e.g.
http://127.0.0.1:8181/#/flags/set?name=some_flag&value=100
--
I reworked the Flags class to use a growing array rather than a linked list to store flags. This means that we don't need to go through the hassle of building an array and sorting every time that we print/printjson.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//299143007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36712 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-27 21:27:17 +00:00
koda@google.com
61bde80790
Retaining path in Observatory.
...
Add retaining_path instance command to VM service, exposed in the Observatory
with a [find] eval-link in instance view. By default shows up to 10 elements,
possibly followed by [find more] which doubles the number of elements shown.
Change RetainingPath to include the object itself.
Always include an id in Object::PrintJSONImpl, to avoid instance-ref crashing on
internal objects.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//292663012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36516 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-22 17:31:47 +00:00
koda@google.com
21b2b3ec17
Disallow eval on lists containing non-instances.
...
BUG=dart:18781
R=turnidge@google.com
Review URL: https://codereview.chromium.org//294473006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36435 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-21 15:50:59 +00:00
hausner@google.com
12c56b29c7
Eliminate unused url mapping parameter in dartutils
...
Change the LibraryTagHandler used in unit tests to match
the real tag handler better, eliminating special treatment
of url canonicalization. This required changing the library
url of tests so tests don’t get loaded using dart scheme urls,
since builtin.dart doesn’t handle dart: urls.
R=iposva@google.com
Review URL: https://codereview.chromium.org//270503007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35987 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-09 18:25:41 +00:00
koda@google.com
66369faf9c
Class view: Retained size of all instances.
...
Uses eval-link to compute retained size on request.
Does not round to MB or other human-friendly units.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//266323002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35773 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-05 22:10:35 +00:00
koda@google.com
1c3a41ad13
Retained size for instance in Observatory.
...
Add objects/$id/retained message that uses ObjectGraph to compute retained size for an instance.
In the instance view, the user can request the size to be calculated.
R=turnidge@google.com
Review URL: https://codereview.chromium.org//263803009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35757 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-05 19:41:12 +00:00
turnidge@google.com
14ccd5494d
Don't remap class/type names in the vm service.
...
We add a new kind of name, PrettyName, to the vm. This is a name
which is demangled but doesn't remap things like _OneByteString to
String or _Smi to int.
BUG=18360
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//264743010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35710 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-02 21:37:01 +00:00
zra@google.com
7d0b680f95
Adds Simulator Longjmp and enables many tests for arm64.
...
R=regis@google.com
Review URL: https://codereview.chromium.org//264753002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35603 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-30 23:07:47 +00:00
turnidge@google.com
9243ffc4ff
Always use the same json for null in the vm service.
...
PrintToJSONStream -> PrintJSON.
ALSO:
Fix <em> tags in the Observatory.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//257053003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35532 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-29 18:10:02 +00:00
iposva@google.com
fd8565b071
- Add a minimal implementation of Capability.
...
- Make RawReceivePort and SendPort VM internal objects.
- Rationalize the creation of ports and their handling within the VM.
R=asiva@google.com
Review URL: https://codereview.chromium.org//243973002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35325 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 19:44:03 +00:00
zra@google.com
2fe51715e5
Begins work on ARM64, first assembler test.
...
Most new code is in constants_arm64.h and
{assembler,disassembler,simulator}_arm64.{h,cc}
The rest of the CL just #def's out tests, modifies status files,
and adds UNIMPLEMENTED functions, etc.
R=regis@google.com
Review URL: https://codereview.chromium.org//221133002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34654 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-02 17:39:32 +00:00
johnmccutchan@google.com
ab19ef4f31
Redo allocationprofile options
...
BUG=
R=turnidge@google.com
Review URL: https://codereview.chromium.org//217323006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34620 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-01 22:05:39 +00:00
turnidge@google.com
b373e6c423
Change how we provide value previews in the vm service.
...
Rename the 'preview' property to 'valueAsString'.
Rework printing so that we only add 'valueAsString' when we need it
(num, String, etc.).
Change ToUserCString to be a String-only method. Drop ToUserCString
for lists -- it was hokey and unused. Max string length is now 1024
instead of 40.
Update tests.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//219333011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34612 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-01 19:45:57 +00:00
turnidge@google.com
3e86631f02
Use tokenPos instead of line/col in the vm service.
...
Add line number information to the Script response.
Parse line number information in the observatory.
Update <script-ref> to take a pos argument
Add a new <script-inset> element which shows a code snippet.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//216883008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34528 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-28 21:24:24 +00:00
turnidge@google.com
99fca31c02
Support Types in instance-ref/instance-view.
...
Refactor JSON printing for all instances to share more code. This allows Types to act like Instances in Observatory.
Update the look and feel for the function-view page.
Add script info for functions.
Update tests.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//211283004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34435 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-26 17:13:03 +00:00
koda@google.com
c1437c3673
Add 'address' vm service message that finds heap objects.
...
Will be used to navigate from heap map to individual objects.
R=turnidge@google.com
Review URL: https://codereview.chromium.org//206583003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34206 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-20 21:08:24 +00:00
turnidge@google.com
9c5c7040dc
Add a VM page to the observatory.
...
Make the VM a ServiceObject. Some refactoring in the ServiceObject
implementation.
IsolateList is no longer a ServiceObject. It should eventually become more like our caches.
Support the /vm request in the vm. Remove isolate list request.
Improvements to Isolate::PrintToJSONStream: always provide a
reasonable name. Use the same code to produce isolate refs and
non-refs.
Improve isolate status message when the isolate is paused at
start/exit. Add a resume link to the isolate view.
Add a navbar to the error page so that dartium users are less likely
to get stuck.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//206213004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34204 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-20 21:00:10 +00:00
koda@google.com
9a8671276b
Add class and address information to heap map; display on hover.
...
Display a string like "String @ 0xe97c3328" while hovering over the map.
Also add page separators (black).
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//204103009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34195 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-20 18:56:45 +00:00
regis@google.com
fe667b6d9a
Support displaying of types in the observatory (back-end only for now):
...
- canonical type arguments cached in the global hash table
- subset of the above, but with cached instantiations
- canonical types cached by the type class
And of course, it should now be possible to display any type, e.g.
field types, function signature types, classes super types, interface types,
etc...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//184653003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34181 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-20 16:41:59 +00:00
johnmccutchan@google.com
6952f5ddfe
Use VM tag in profile and add stack trace trie
...
R=asiva@google.com , turnidge@google.com
Review URL: https://codereview.chromium.org//201213004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34064 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-18 21:20:41 +00:00
turnidge@google.com
7fbb7cd5dc
Rework library and class view pages.
...
Add expression evaluation support for libraries and classes.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//199363002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33755 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-17 17:43:07 +00:00
johnmccutchan@google.com
6ea46abd34
Create a shadow table to track CodeRegions of reused code address space.
...
R=asiva@google.com , turnidge@google.com
Review URL: https://codereview.chromium.org//197803004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33665 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-13 21:00:44 +00:00
turnidge@google.com
560f89028f
I forgot to filter a machine-dependent field in the service unit test.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//197763004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33612 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-12 21:08:19 +00:00
koda@google.com
c62fcdf3c4
Heap maps: add VM service message.
...
A heap map is serialized as arrays of sizes + class ids:
{"type":"HeapMap","id":"heapmap","pages":[[15,2,10,3,...,100,0],...,]}
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//197663006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33608 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-12 20:46:09 +00:00
turnidge@google.com
a73703b08a
Improve the instance-view page in observatory.
...
Add an eval-box element which is used to evaluate expressions.
Support expression evaluation for instances in the vm service.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//194623006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33592 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-12 17:18:14 +00:00
johnmccutchan@google.com
115caa8fe2
Fix service test breakage
...
BUG=
Review URL: https://codereview.chromium.org//195613002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33545 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-11 18:38:03 +00:00
hausner@google.com
295b7fd5b2
Eliminate more implicit getters
...
For some reason I don’t remember, we only attempt to optimize
away the implicit getter functions of const and final static
fields, but not non-final static fields. This change applies the
same optimization for all static fields, and also for all
top-level fields.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//189583003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33433 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-07 16:20:11 +00:00
johnmccutchan@google.com
0f79171efb
Add user resetable accumulator to allocation profiler.
...
Display aggregate of new and old space in a separate table.
Speed up display of tables by 10x.
Fix heap display bug (heap stats were always for new space).
Keep sort across refreshes.
R=turnidge@google.com
Review URL: https://codereview.chromium.org//173013004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33220 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-03 15:39:06 +00:00
fschneider@google.com
16857e0b13
Revert r32930 (Add more timing information in the VM to track time...)
...
It caused severe performance regressions that should be addressed.
TBR=asiva@google.com
Review URL: https://codereview.chromium.org//177733002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32959 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-24 12:15:55 +00:00
asiva@google.com
6d313d3797
Add more timing information in the VM to track time spent is dart code Vs native code.
...
R=johnmccutchan@google.com , turnidge@google.com
Review URL: https://codereview.chromium.org//137483010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32930 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-21 21:30:29 +00:00
johnmccutchan@google.com
2820a12766
Allow for embedder provided service request handlers
...
BUG=
R=turnidge@google.com
Review URL: https://codereview.chromium.org//170943003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32769 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-18 22:38:11 +00:00
johnmccutchan@google.com
9d80608b9c
Add Float64x2, Float64x2List, etc... with runtime and dart2js implementations
...
R=sra@google.com , srdjan@google.com
Review URL: https://codereview.chromium.org//148043003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32196 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-31 15:28:05 +00:00
lrn@google.com
d0651286c6
Make _Utf8Encoder create its buffer through an external function.
...
This allows the VM to use a Uint8List, where dart2js still has to use a plain List (due to versions of IE not supporting typed data).
R=floitsch@google.com
Review URL: https://codereview.chromium.org//144473004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32193 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-31 13:11:25 +00:00
turnidge@google.com
b891e78325
Post-meetup feature extravaganza.
...
Remodel the top-level isolate summary page.
Add variables to stack frames in the stack trace.
Stop putting small integers and bools in the object id ring.
Rework how we pass down null references (and null-like references like
uninitialized values).
Collect all isolate timers by default.
Change the lifetime of IsolateSpawnState so that we can refer to it
later to know how an isolate started up. Stop pretending that
IsolateSpawnState is a void*. Clean up vestigial IsolateStartData.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//145323002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32128 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-29 18:40:12 +00:00
johnmccutchan@google.com
a6399981e6
Code coverage in Observatory
...
R=turnidge@google.com
Review URL: https://codereview.chromium.org//143973005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31970 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-22 00:46:30 +00:00
lrn@google.com
9357caa547
Revert "Make VM TypedList not implement ByteBuffer."
...
Html transferable test fails to send buffer as buffer.
Review URL: https://codereview.chromium.org//137783019
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31875 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-16 11:48:07 +00:00
lrn@google.com
c2f6609181
Make VM TypedList not implement ByteBuffer.
...
BUG= http://dartbug.com/10136
R=asiva@google.com , sra@google.com
Review URL: https://codereview.chromium.org//138033002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31873 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-16 10:18:41 +00:00
turnidge@google.com
12f8555b19
Allow root level requests in the vm service.
...
Move /cpu to the root level.
Move PostReply to the command handlers. This will allow command
handlers to reply asynchronously (by delegating elsewhere) if they
need to.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//131973007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31849 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-15 20:45:39 +00:00
johnmccutchan@google.com
7da1f4f3ba
Build map of code regions and address ticks for profile report.
...
Profile pauses should be less than 500 ms even when handling 120,000 samples (2 minutes @ 1000 hz).
Code objects are referenced by hex address: "code/cafebabe".
Test for retrieving code objects over the service.
Remove old profile tool scripts. Replaced by dprof (https://github.com/dart-lang/dprof ) and Observatory UI for profiler.
Support for stable service refs to implicit closures and dispatcher functions.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//100103011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31447 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-03 19:55:50 +00:00
hausner@google.com
15e8f121dd
Change how debugger handles source breakpoints
...
- Identify a source breakpoint by a script and a token position
rather than a function object.
- When a new breakpoint is set, iterate over all compiled functions
to see whether code breakpoints must be set.
This change fixes issues with functions that get compiled several
times, for example as implicit closures or a copies of mixin
functions or local closures of mixing functions. We did not detect
all duplicates of functions.
Eliminated recently introduced const modifiers in SourceBreakpoint
class. They tend to be in the way because several accessor methods
of SourceBreakpoint compute data lazily and modify the object as a
side effect.
Review URL: https://codereview.chromium.org//117133005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31372 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-26 20:53:58 +00:00
johnmccutchan@google.com
727d29d6b6
Refactor VM service IDs:
...
- IDs are strings which can be concatenated together like paths.
- Isolate ID is now "/isolates/XXX"
- Function, field, class, library, and script IDs are now stable.
- Introduce <type-ref> tags.
R=turnidge@google.com
Review URL: https://codereview.chromium.org//98253009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31358 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-20 22:35:55 +00:00
turnidge@google.com
b640712e6b
Handle vmservice messages while at breakpoint.
...
Allow rudimentary inspection of breakpoints from vmservice.
R=hausner@google.com , johnmccutchan@google.com
Review URL: https://codereview.chromium.org//113513004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31233 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-18 17:45:17 +00:00