Commit Graph

6082 Commits

Author SHA1 Message Date
srdjan@google.com e4ecc75cfb Copy of Issue 247503003: Fix inline tree printing and add more information to it.
(Lost all data on HD, using LGTM-d patch).

Review URL: https://codereview.chromium.org//258543002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35350 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 04:30:40 +00:00
iposva@google.com 0d236b7402 - Rationalize the way we use comments.
R=koda@google.com

Review URL: https://codereview.chromium.org//254483005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35349 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 01:57:47 +00:00
koda@google.com fec858433b Allocate assembler comments in old space.
TBR=iposva@google.com

Review URL: https://codereview.chromium.org//257443002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35347 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 00:49:46 +00:00
iposva@google.com e1ec7a2c5f - Update status file to mark crashing test while investigating.
- Remove unused fields from socket code.

R=asiva@google.com

Review URL: https://codereview.chromium.org//257433002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35346 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 00:37:55 +00:00
iposva@google.com d8753e6f8b - Remove some unnecessary classes from the object store.
R=asiva@google.com

Review URL: https://codereview.chromium.org//257413002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35343 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 23:45:17 +00:00
zra@google.com 37baacb116 Small fixes for Android.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//254383003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35342 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 23:20:24 +00:00
hausner@google.com 3f40651e3a Support evaluation of expressions in context of a stack frame
This change adds a debugger API function to evaluate an expression
in the context of a particular stack frame. The expression can
refer to local variables accessible in the frame, but it cannot
alter the variables.

R=regis@google.com

Review URL: https://codereview.chromium.org//249533003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35340 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 22:56:23 +00:00
koda@google.com 66a5a51365 Remove VM isolate new-space allocation.
This was wrong, since those objects were never pre-marked.

Also, in a future change, we can completely avoid reserving new-space for the VM isolate.

Add ASSERT that VM isolate never allocates in new space.

R=iposva@google.com

Review URL: https://codereview.chromium.org//247623007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35339 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 22:48:33 +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
koda@google.com f394f4b7dc Object size on heap map hover.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//247713006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35324 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 19:41:08 +00:00
koda@google.com 00ae3f7848 Fix accumulated size stats for fixed-size instances.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//249843003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35321 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 18:17:03 +00:00
regis@google.com da0958c822 Expose functionality to create a stack trace to internal vm code.
Provide functionality to limit depth of printed stack trace.
Fix frame numbering in presence of invisible functions in stack trace.
Let FlowGraphBuilder know if it is building a graph to generate optimized code.
The above features will be used to warn on Javascript incompatibilities.

R=srdjan@google.com

Review URL: https://codereview.chromium.org//248213002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35319 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 17:58:12 +00:00
zra@google.com 0995122da8 Enables first codegen test on arm64.
R=regis@google.com

Review URL: https://codereview.chromium.org//246293010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35317 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 17:50:43 +00:00
koda@google.com a36796b587 Connect heap map to instance view.
Clicking anywhere on the heap map sends an 'address' message to look up the object spanning the corresponding address.

Also fix issue with free list elements (which cannot be wrapped in handles).

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//249553003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35315 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 17:00:01 +00:00
kustermann@google.com ebd8317290 Extract common code, add host IP to --debug and --enable-vm-service options
R=hausner@google.com, johnmccutchan@google.com

Review URL: https://codereview.chromium.org//239303004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35312 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 13:09:10 +00:00
ajohnsen@google.com ab53006509 Fix recursive directory deletion, to not leak file descriptors (and pointers).
BUG=
R=sgjesse@google.com

Review URL: https://codereview.chromium.org//249233002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35310 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 12:09:12 +00:00
ajohnsen@google.com ee4ff079f5 Speed up DateTime members, by caching the results.
The result is stored in a list of ints. This turned out to be the most efficient way to store it, compared to packing in ints.

BUG=
R=srdjan@google.com

Review URL: https://codereview.chromium.org//247373004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35303 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 06:17:39 +00:00
ajohnsen@google.com 8f41c24471 Make server-sockets level triggered.
BUG=
R=sgjesse@google.com

Review URL: https://codereview.chromium.org//234843003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35302 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 06:05:46 +00:00
rmacnak@google.com 7ba8ca5753 Reapply "Mark private functions in dart:* that are native or constructors as not visible (omitted from stack traces and ineligible for reflective enumeration or invocation)."
With fix for uninitialized is_dart_scheme_ when read from snapshot.

BUG=http://dartbug.com/15274
R=iposva@google.com

Review URL: https://codereview.chromium.org//247683002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35289 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 00:05:08 +00:00
regis@google.com 98bcbb0dae Do not ignore side effects of a type test or type cast as expression, such
as bound errors in checked mode.
Added tests.

R=srdjan@google.com

Review URL: https://codereview.chromium.org//246293008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35284 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 20:48:13 +00:00
zra@google.com f94ea20502 Adds StoreIntoObject for arm64.
R=regis@google.com

Review URL: https://codereview.chromium.org//247023004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35277 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 19:44:11 +00:00
kevmoo@google.com 696e05cfef VM mirrors: Use UnmodifiableMapView from dart:collection
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//246133003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35274 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 18:39:51 +00:00
johnmccutchan@google.com 1e72c0f6c4 Disable applyAuthorStyles
This allows us to remove the dependency on bootstrap.css (removal of bootstrap.css from third_party will happen in follow up CL).

As a side effect of this, the following changes have occurred:

- Removed Google Charts Table from allocation profile pane.
- Add a SortedTable view-model (used in allocation profile).
- Changes to CPU profile tree view.
- Consolidate string formatting utility functions.

There is some UI regression (font size is one size too small) that will have to be addressed in follow up CLs.

R=turnidge@google.com

Review URL: https://codereview.chromium.org//237683004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35266 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 16:01:14 +00:00
ajohnsen@google.com fffd6da770 Use AI_ADDRCONFIG on Windows as well.
BUG=http://code.google.com/p/dart/issues/detail?id=16742
R=sgjesse@google.com

Review URL: https://codereview.chromium.org//246843005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35251 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 10:46:47 +00:00
lrn@google.com 5f34d56f70 Avoid comparing smi to mint in smi.toString().
As it happens 10^10 has 11 digits, not 10.

R=ajohnsen@google.com

Review URL: https://codereview.chromium.org//247083002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35249 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 09:26:31 +00:00
lrn@google.com 0e24a1701c Revert "Remove unmodifiable map wrappers that could instead use UnmodifiableMapView."
Some tests fail.

Review URL: https://codereview.chromium.org//246833003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35245 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 06:21:24 +00:00
lrn@google.com 04b55abe64 Remove unmodifiable map wrappers that could instead use UnmodifiableMapView.
R=sgjesse@google.com

Review URL: https://codereview.chromium.org//214723002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35244 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 05:53:33 +00:00
rmacnak@google.com 7840906011 Revert "Mark private functions in dart:* that are native or constructors as not visible (omitted from stack traces and ineligible for reflective enumeration or invocation)."
Review URL: https://codereview.chromium.org//246173002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35238 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-22 00:08:52 +00:00
rmacnak@google.com 69d82c334b Mark private functions in dart:* that are native or constructors as not visible (omitted from stack traces and ineligible for reflective enumeration or invocation).
Ensure invocation_fuzz_test doesn't exit prematurely.

Also visit instance methods defined in superclasses.

Complete blacklist so invocation_fuzz_test passes on the VM.

B=http://dartbug.com/15274
R=iposva@google.com

Review URL: https://codereview.chromium.org//241993004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35234 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-21 23:24:17 +00:00
hausner@google.com ea84b80f47 Add class id to debugger stack trace
Add the class id of the origin class of each activation frame’s function.
Top-level functions have no class id. The wire protocol for an activation
frame now looks like this:

CallFrame =	“{“ functionName “:” String “,”
                    [ location “:” Location “,” ]
                    [ classId “:” Integer “,” ]
                    locals “:” NamedObjList “}“

R=devoncarew@google.com

Review URL: https://codereview.chromium.org//242453011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35232 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-21 23:16:41 +00:00
johnmccutchan@google.com c3a88f02c0 Register existing isolates when service isolate is started
BUG=
R=asiva@google.com

Review URL: https://codereview.chromium.org//242493007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35227 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-21 22:16:34 +00:00
asiva@google.com 2d3f479fc6 Invoke the GC prolog and epilog callbacks during new gen GC too.
R=iposva@google.com

Review URL: https://codereview.chromium.org//245773002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35223 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-21 21:29:46 +00:00
zra@google.com 76dfb827cb Adds load/store from signed, unscaled, 9-bit offset w/ no writeback to arm64.
I missed this before because it was in the docs under the assembler mnemonic ldur.

R=regis@google.com

Review URL: https://codereview.chromium.org//242983006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35222 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-21 20:30:27 +00:00
asiva@google.com 4eb6d5f7d8 Modify the Weak Reference Set creation API to make it easier to create
these sets in the GC Prologue code.

When this new API is not used in dartium:
  Without prolog callbacks in New  gen GC:
    dom-modify createElement runs-per-second 260.94890510948903
    dom-modify createTextNode runs-per-second 172.0

  With prolog callbacks in New  gen GC:
    dom-modify createElement runs-per-second 316.0
    dom-modify createTextNode runs-per-second 197.60479041916167


When this new API is used in dartium:
  Without prolog callbacks in New  gen GC:
    dom-modify createElement runs-per-second 310.0
    dom-modify createTextNode runs-per-second 174.4765702891326

  With prolog callbacks in New  gen GC:
    dom-modify createElement runs-per-second 416.0
    dom-modify createTextNode runs-per-second 241.75824175824175

R=iposva@google.com

Review URL: https://codereview.chromium.org//238063011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35215 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-21 18:31:15 +00:00
johnmccutchan@google.com fdaf1b59bf Undo r35207
Review URL: https://codereview.chromium.org//243583008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35208 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-21 16:03:52 +00:00
johnmccutchan@google.com 1606fce42f Add TraceBuffer log to all Functions (plus small tweaks to function-view)
BUG=
R=srdjan@google.com, turnidge@google.com

Review URL: https://codereview.chromium.org//227423005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35207 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-21 15:57:09 +00:00
srdjan@google.com 05633cfa3d Revert unused optimization in math.pow and implement same code in Dart as is done in the inlined version.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//243923002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35203 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-21 15:02:42 +00:00
zra@google.com fde6c7a829 Adds Runtime call stub and Dart entry stub to ARM64.
R=regis@google.com

Review URL: https://codereview.chromium.org//243773002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35190 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-18 23:43:15 +00:00
srdjan@google.com 7b72a681b3 Fix SIMARM64 build on Mac.
R=zra@google.com

Review URL: https://codereview.chromium.org//243433005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35189 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-18 23:28:03 +00:00
koda@google.com 4843e329e3 Fix x64 GC test: ensure huge is huge enough.
TBR=iposva@google.com

Review URL: https://codereview.chromium.org//243673002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35180 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-18 20:01:41 +00:00
johnmccutchan@google.com c92b2c387b Intrinsify UserTag operations on all architectures
R=srdjan@google.com, zra@google.com

Review URL: https://codereview.chromium.org//237063004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35175 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-18 18:56:07 +00:00
koda@google.com 718752bfe9 Simpler, more consistent triggering of old GC; also, use external in policy.
Consistently use PageSpace::NeedsGarbageCollection:
(a) After every scavenge, instead of tracking promotion failures.
(b) When creating weak handles with external allocations.

R=iposva@google.com

Review URL: https://codereview.chromium.org//226973003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35174 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-18 18:23:35 +00:00
koda@google.com f6fa809628 Check for class id overflow to exit rather than crash.
BUG=dart:18284
R=iposva@google.com, rmacnak@google.com

Review URL: https://codereview.chromium.org//243133004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35170 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-18 16:42:01 +00:00
zra@google.com 57abf60fc8 Code patching for ARM64.
R=regis@google.com

Review URL: https://codereview.chromium.org//241573002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35156 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-17 22:00:11 +00:00
rmacnak@google.com 749c81727c VM Service: Include a response id when enumerating scripts.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//241253002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35146 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-17 18:16:33 +00:00
koda@google.com 36d2d507f8 Limit shrinkage: allow growth by at least half the pages freed by GC.
R=iposva@google.com

Review URL: https://codereview.chromium.org//233473002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35145 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-17 17:06:44 +00:00
turnidge@google.com 110570e9fe Fixes a problem with the recovery of contexts in the debugger at closure calls.
When we call a closure, the caller saves the context before the call.
So when walking the stack, we used to check the callee activation to
see if it was a closure call, and then recover our caller-saved
context.

This breaks down in the following case:

1. Caller calls function F.
2. Function F is compiled.
3. The compiler needs to run code to evaluate a constant (e.g. a
   static final getter).
4. We hit a breakpoint *while* evaluating the constant.

In this case, there is no callee frame for the closure call yet.

I fix this by using the the pc descriptors to see if the current pc in
the caller is a closure call.  This avoids needing to have a callee
frame available.

---

ALSO:

New flags:

--verify-incoming-contexts: in development - verify assumptions about
  contexts in stub code. (currently ia32 only)

--trace-debugger-stacktrace: this helps debug these kinds of
  stacktrace issues.

Miscellaneous improvements to frame and context printing.

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//240213004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35130 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-16 20:03:30 +00:00
zra@google.com 25d93a82e2 Adds simulator debugger and Stop to arm64.
Also replaces UNIMPLEMENTED in stubs with Stop so
we can enable generation.

R=regis@google.com

Review URL: https://codereview.chromium.org//240283005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35127 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-16 19:57:52 +00:00
zra@google.com d128fb91ae Adds object pool, LoadImmediate, and LoadObject to ARM64.
Also enables many object tests.

R=regis@google.com

Review URL: https://codereview.chromium.org//239303008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35109 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-16 15:48:33 +00:00
ajohnsen@google.com 94f53d4d2b Fix *ServerSocket's handling of zones.
A stream's zone is the one it has when listening to. Use that, and not
the one active when creating the socket.

BUG=https://code.google.com/p/dart/issues/detail?id=17468
R=floitsch@google.com

Review URL: https://codereview.chromium.org//239613002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35071 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-15 18:44:14 +00:00