Begin implementing a debugger page in Observatory.

In progress.

For now we have a split view with the stack on top and
console/controls on the bottom.

R=johnmccutchan@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40887 260f80e4-7a28-3924-810f-c04153c831b5
Bump-pointer allocation when reading snapshot; 10-15% faster isolate creation.

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40888 260f80e4-7a28-3924-810f-c04153c831b5
Write barrier audit, part 1.

First step towards complete audit of all writes to the heap for write barrier compliance (at least on simulator debug builds).

This first CL is a semi-mechanical refactoring to route most Object field writes through StoreNonPointer and StoreSmi methods.

A few stores were converted to StorePointer (skipping the write barrier check is premature optimization for those cases).

Next step will be to make raw_ptr() return a const pointer and use the constness to clean up remaining writes in C++.

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40889 260f80e4-7a28-3924-810f-c04153c831b5
cleanup/organize/improve completion tests

BUG=
R=scheglov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40890 260f80e4-7a28-3924-810f-c04153c831b5
Dart version of double.parse that works for numbers that can be represented exactly as doubles.

BUG= http://dartbug.com/17711
R=vegorov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40891 260f80e4-7a28-3924-810f-c04153c831b5
Fix wrong limit on list index in double.parse.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40892 260f80e4-7a28-3924-810f-c04153c831b5
Make Iterable.toSet say that it returns a Set with the same equality as the Iterable's contains method.

Let's consider whether this is really desirable once more.
It seems messy, but so does not doing it.

R=ajohnsen@google.com, floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40893 260f80e4-7a28-3924-810f-c04153c831b5
Forget closures in universe.

R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40894 260f80e4-7a28-3924-810f-c04153c831b5
Forget closure classes.

R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40895 260f80e4-7a28-3924-810f-c04153c831b5
Clean up imports.

R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40896 260f80e4-7a28-3924-810f-c04153c831b5
Suppress new co19 tests on dartium, that break the test infrastructure.

BUG=dartbug.com/18558
R=kustermann@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40897 260f80e4-7a28-3924-810f-c04153c831b5
Truncate verbose source print.

R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40898 260f80e4-7a28-3924-810f-c04153c831b5
Propertly tree shake factory constructors.

An invocation of a factory constructor on class A does not necessarily
cause class A to be instantiated--it may redirect to a related or
unrelated class, or instantiate nothing at all.

We handle this by treating constructors similar to static function
calls--when a constructor invocation is found, the constructor element
is added to the queue; later, when the constructor element is
analyzed, we determine whether it instantiates the class or not based
on what kind of constructor it is.

R=brianwilkerson@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40899 260f80e4-7a28-3924-810f-c04153c831b5
refactor library prefix suggestion generation
so the imported_computer is responsible for all suggestions
based upon import directives.

BUG=
R=scheglov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40900 260f80e4-7a28-3924-810f-c04153c831b5
Update only the changed region of a document after formatting.

R=brianwilkerson@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40901 260f80e4-7a28-3924-810f-c04153c831b5
Initial timing framework and test for server

R=paulberry@google.com, scheglov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40902 260f80e4-7a28-3924-810f-c04153c831b5
Fix for the prefix/suffix diff computing.

We need to exclude a common part of a prefix/suffix.
Also, I decided not to improve diff calculation, at least in the short term.
So, I'm removing diff.dart and the TODO comment.

R=brianwilkerson@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40903 260f80e4-7a28-3924-810f-c04153c831b5
Change integration test send...() methods to use structured objects.

This is less error prone than using raw JSON, and requires less effort
when writing integration tests.

R=brianwilkerson@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40904 260f80e4-7a28-3924-810f-c04153c831b5
Expands the use of Immediate and Operand wrappers.

Since Register is an enum type, it is automatically
coerced to integer types when passed as a parameter to
functions expecting an integer argument. This change
expands the use of Immediate and Operand wrappers
for Assembler instructions and macros to avoid this
automatic coercion.

I've also added dummy constructors to Address and
FieldAddress classes to address the same problem,
but in a way that does not increase verbosity,
since Address and FieldAddress are much more
prevalent in the code.

A cleaner solution would involve making Register
no longer coercable to integer types, but this
would likely require many changes to the Assemblers.

R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40905 260f80e4-7a28-3924-810f-c04153c831b5
Uncomment and clean up all_the_rest.dart tests.

R=brianwilkerson@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@40906 260f80e4-7a28-3924-810f-c04153c831b5