Commit Graph

114 Commits

Author SHA1 Message Date
Lars Bak b38b2f7071 Added JSON reporting to reload.
BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2186303002 .
2016-07-28 11:07:15 -07:00
Lars Bak a4a314251b Added use of from_.
BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2183703003 .
2016-07-26 11:22:40 -07:00
Lars Bak 293c6116e9 Implemented schema change for the isolate reload operation.
I'll add more tests to isolate_reload_test.cc while waiting for the first round of comments.

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2179983002 .
2016-07-26 11:13:28 -07:00
John McCutchan c692a64e5a Rework how enums are implemented and reloaded
- Enum instances now hold their index and their label. Before the labels were held in a static array to the side and the index was used to look up the label.

- Before and after reload enum instances are now paired (by label) and put into the 'become' table.

Fixes https://github.com/dart-lang/sdk/issues/26877

R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2153143002 .
2016-07-15 10:52:20 -07:00
Ryan Macnak 69be2c8b57 Implement rebinding super calls after hot reload.
BUG=http://dartbug.com/26884
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2147293002 .
2016-07-14 14:20:44 -07:00
Todd Turnidge 77b99396e8 Disallow deferred loading when using isolate reloading.
Update status files.

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2144113002 .
2016-07-13 15:25:06 -07:00
John McCutchan e8a214bc67 Fix language/enum* hot reload failures
BUG=
R=asiva@google.com

Review URL: https://codereview.chromium.org/2142013002 .
2016-07-12 10:42:45 -07:00
John McCutchan 51ace86544 Bug fixes for hot reload
- [x] Report the reload error synchronously from the _reloadSources RPC.
- [x] Add sticky reload error to an isolate so we can report the error.
- [x] Remove redundant 'OnStackReload'.
- [x] Fix a bug where a class could have a field added but we wouldn't reject it.
- [x] Add unit test for above bug fix.
- [x] Enable reload via the service protocol with a live stack.

R=fschneider@google.com

Review URL: https://codereview.chromium.org/2070873002 .
2016-06-16 11:02:35 -07:00
John McCutchan c0eb4d9dc0 Remember inside an ICData if it is for a static call or an instance call
- [x] Add an is static call bit to ICData
- [x] Rewrite the reset ICData iterators to rely on that bit rather than the function's ic data map

BUG=

Review URL: https://codereview.chromium.org/2064693003 .
2016-06-13 13:23:57 -07:00
John McCutchan 77e0e96b5f Revert "Remember inside an ICData if it is for a static call or an instance call"
I accidentally committed an old version of this CL.

This reverts commit 9256d49af5.

BUG=

Review URL: https://codereview.chromium.org/2062983002 .
2016-06-13 13:19:38 -07:00
John McCutchan 9256d49af5 Remember inside an ICData if it is for a static call or an instance call
- [x] Add an is static call bit to ICData
- [x] Rewrite the reset ICData iterators to rely on that bit rather than the function's ic data map

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2044423003 .
2016-06-13 13:09:48 -07:00
John McCutchan 4d5ad08d11 Enable on stack reload in standalone embedder
- [x] Implement Isolate::OnStackReload
- [x] Now that we don't invoke Dart code during loading, stop blocking class finalization during loading

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2049833002 .
2016-06-08 11:00:31 -07:00
Siva Annamalai 5de775a823 - Canonicalize generic types in a global isolate hash
table, this ensures that we do not linearly walk through
  a large type list in the class calling the expensive
  'Type::Equals' method (some applications have close to
  1304 generic types in them)

- Use the stand hash table implementation for TypeArguments
  canonicalization instead of a custom hash table

R=johnmccutchan@google.com, regis@google.com, rmacnak@google.com

Review URL: https://codereview.chromium.org/1965493004 .
2016-05-17 14:35:23 -07:00
John McCutchan 48c8ffa7f3 Initial isolate reload support
This is a cut of the work that Todd and I collaborated on in the reload branch.

In this CL, we've dropped the loader port hacks, in other words, on stack reloading in the standalone embedder does not work yet.

- [x] Support for hot reloading of isolate source code
- [x] Unit test harness and many tests
- [x] Service protocol and Observatory support
- [x] Product build does not include support for hot reloading.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org/1965823002 .
2016-05-17 12:19:06 -07:00