Commit Graph

6117 Commits

Author SHA1 Message Date
zra@google.com a4b84a722a Ensures that stubs added to each object pool on x64
are generated before they are used by reordering the
list of stubs.

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35524 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-29 14:48:00 +00:00
johnmccutchan@google.com 15eff079d7 Collect samples during isolate startup
BUG=
R=asiva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35522 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-29 14:17:31 +00:00
ajohnsen@google.com 84bc2d6409 Remove accidental code.
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35521 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-29 11:49:20 +00:00
ajohnsen@google.com 3265fb5d09 Make FileStat have millisecond precisions, for linux, mac and android.
BUG=https://code.google.com/p/dart/issues/detail?id=18442
R=sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35520 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-29 11:38:50 +00:00
ajohnsen@google.com 2151658634 Use accept and not accept4.
BUG=https://code.google.com/p/dart/issues/detail?id=18446
R=sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35515 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-29 07:40:05 +00:00
asiva@google.com 54397efcc5 Minor cleanup.
R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35512 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-29 00:32:22 +00:00
iposva@google.com 16e405af4c - Fix for unsuccessful hoisting of CheckSmi in _HashMap.[]=
R=srdjan@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35511 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-28 23:43:19 +00:00
hausner@google.com f5dd5598ac Don’t set more than one code breakpoint per token position
Some time ago when operator== calls had inlined null checks at
the call site, the debugger had to instrument multiple code breakpoints
that were all mapping to the same source position. This is no longer
necessary. This change makes sure we set a code breakpoint only at
the lowest compiled code address, so that expressions like i++ no longer
result in 2 or 3 breakpoints (one each for load filed, add, store field).

Fixes 18397.

R=srdjan@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35510 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-28 23:40:34 +00:00
fschneider@google.com b3098a263b Fix polymorphic inlining of method dispatchers.
Field dispatchers and noSuchMethod dispatchers are generated by the VM
compiler and should always be inlined - this CL fixes the case of polymorphic
inlining where dipatchers were not inlined in the same way as for monomorphic
calls sites.

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

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35490 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-28 18:01:57 +00:00
hausner@google.com 8e56764233 Fix registration of closure functions
Closure functions get registered in the class by the
compiler backend. The incorrect assumption was that each
closure only gets visited once. However, closures in finally
clauses are duplicated when the AST nodes of the finally
clause are inlined. This change avoids the duplicate registration.

Fixes issue 18225

R=srdjan@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35487 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-28 17:20:09 +00:00
srdjan@google.com 66c18e7c7d Address comments on Issue 258563004.
Review URL: https://codereview.chromium.org//252873003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35486 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-28 17:17:38 +00:00
srdjan@google.com 6723f390fa Disable optimizing compiler on SIMARM64.
R=zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35484 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-28 16:02:28 +00:00
srdjan@google.com 5ce61408ae Fix SIMARM64 to compile on Mac, fix compilation because of ICData change.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35460 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-26 00:13:32 +00:00
srdjan@google.com 93cf4041e4 Fix crashes: ComparisonInstr now has also kinds kIS and kISNOT: implement negation for those.
Review URL: https://codereview.chromium.org//251883004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35459 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 23:54:38 +00:00
regis@google.com e0ab99b0b2 Remember all deopt reasons in ic_data, not just the last one.
Remember if a JS warning was issued in ic_data.
Save a word in ic_data on 64-bit platforms.

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

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35457 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 23:45:14 +00:00
srdjan@google.com 0c2b0af123 Copy of Issue 231383002 after hard disk crash: First step in improving instance of test for a fixed set of value cids returning different results.
Review URL: https://codereview.chromium.org//258563004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35455 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 23:21:12 +00:00
zra@google.com 3274258b4d Enables all codegen tests for arm64.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35448 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 21:28:48 +00:00
turnidge@google.com 5e37b291bb Disable an assertion until bug 18384 is fixed.
BUG=
R=johnmccutchan@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35445 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 20:48:17 +00:00
turnidge@google.com 18a8d7fe4c Fixes bug where we would occasionally materialize a corrupted object.
On the slow path for a stack overflow check we manually spill the live
registers before our call to the runtime function.  We were updating
all uses of these spilled registers in the Environment object but this
was not enough - we also need to update any uses of these spilled
registers in MaterializeObjectInstrs which are hanging off of the
Environment.

This would fail when a deoptimization was triggered during a stack
overflow check and a materialized object happened to refer to
registers.

I've been chasing this for a while and I was able to get it to
reliably reproduce by using the --stacktrace_every=N and the
--stacktrace_filter flags, which were added for this purpose.

ALSO:

Set the top context to null on exceptions/errors.  This is needed for
the --verify-incoming-context flag.

Minor printing improvements.

R=fschneider@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35443 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 20:24:27 +00:00
zra@google.com 2dee7e5a6d Enables all startup code for arm64.
Also, enables a few more codegen tests, and adds
a conditional move instruction.

R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35440 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 18:54:46 +00:00
koda@google.com 2373b673b3 Add Heap::isolate_ to simplify code.
R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35434 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 17:49:27 +00:00
rmacnak@google.com f848586f7f Prevent unbounded growth of the getField/setField closure caches.
BUG=http://dartbug.com/16539
R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35433 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 17:47:15 +00:00
zra@google.com 47d03a04a0 Adds AI_ADDRCONFIG back to address lookup on Android.
R=ajohnsen@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35425 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-25 14:45:34 +00:00
iposva@google.com 69fcc15576 - Account for live size in marker.
R=koda@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35413 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 23:20:48 +00:00
hausner@google.com d7524ee0ba Generate escape sequence for non-printable ascii characters
Fix issue 17857.

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35411 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 22:55:52 +00:00
koda@google.com 12fd7df2bc Use history to estimate what fraction of allocation will be garbage => grow more when less garbage was collected.
Change semantics of heap_growth_rate flag to mean *maximum* number of pages we grow.

Allow more initial growth before first mark-sweep => many small programs will avoid mark-sweep.

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35410 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 22:30:20 +00:00
zra@google.com 321cec1c57 Fix build for ARM64.
Review URL: https://codereview.chromium.org//255543007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35406 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 22:08:20 +00:00
jacobr@google.com 8fd3f6a789 Workaround stacktrace crasher bug in the VM.
Fix for bug setting breakpoint after app reload.

BUG=
R=hausner@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35401 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 20:34:19 +00:00
iposva@google.com 84e4a2d2ce - Remove unneeded creation of :saved_current_context_var
R=turnidge@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35400 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 20:31:45 +00:00
koda@google.com 40836ce1b5 Zero-sized new-space for VM isolate.
Also add unit test that ensures
a zero-sized Scavenger behaves correctly for all operations.

Reduces memory footprint by 32 MB.

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35389 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 18:13:36 +00:00
koda@google.com 8b204e9ac0 RingBuffer<T, N> utility with unit test; use for GC history.
Prompted by index-out-of-bounds error in old code (bug 18375).

BUG=dart:18375
R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35384 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 17:07:51 +00:00
zra@google.com 9fc211af50 Enables simple static call test on arm64.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35380 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 16:29:11 +00:00
lrn@google.com 2a93b93c1c Remove unmodifiable map wrappers that could instead use UnmodifiableMapView.
R=sgjesse@google.com

Committed: https://code.google.com/p/dart/source/detail?r=35244

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35361 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 08:51:41 +00:00
ajohnsen@google.com ca58691974 Mark pipe as close-on-exec.
BUG=
R=sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35354 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 07:34:07 +00:00
ajohnsen@google.com df14081452 Make opendir test for EINTR again and make NO_RETRY_EXPECTED check in release mode.
BUG=
R=sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35352 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 06:38:16 +00:00
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