229 Commits

Author SHA1 Message Date
Ryan Macnak
68339b10cd Reapply "Fix Dart 2 reload when running from a snapshot instead of platform.dill." (flutter/engine#5830)
Without this flag, the VM will attempt to interpret a kernel file as source code.

Affects Fuchsia (FL-71) and code-push.
2018-07-23 12:28:17 -07:00
Jason Simmons
ebbdba1aea Migrate to a standalone Tonic repository separated from Topaz (flutter/engine#5817) 2018-07-23 11:49:35 -07:00
Joshua Seaton
967a473c6d [fml][fxl] Migrate AutoResetWaitableEvent to fml version. (flutter/engine#5808)
Thanks Jason for the speedy review
2018-07-20 10:12:38 -07:00
Stanislav Baranov
19219f9693 Fix starting isolate directly from CoreJIT snapshot. (flutter/engine#5798) 2018-07-19 08:55:04 -07:00
sjindel-google
4ab74637ba Re-land removal of vmservice_io from release builds. (flutter/engine#5784) 2018-07-19 15:21:21 +02:00
Ryan Macnak
98fc707abc Revert "Fix Dart 2 reload when running from a snapshot instead of platform.dill. (#5792)" (flutter/engine#5795)
This reverts commit fd1656945ba40e7389f23998446e9ec8e9a4e10c.
2018-07-18 13:18:05 -07:00
Ryan Macnak
fd1656945b Fix Dart 2 reload when running from a snapshot instead of platform.dill. (flutter/engine#5792)
Without this flag, the VM will attempt to interpret a kernel file as source code.

Affects Fuchsia (FL-71) and code-push.
2018-07-18 12:07:21 -07:00
Alexander Aprelev
f861b8ca20 Enable sync-async (flutter/engine#5765) 2018-07-16 09:18:07 -07:00
Jonah Williams
c8516387e2 Revert rollback of "add assistiveTechnologyEnabled to window" (flutter/engine#5750) 2018-07-16 09:04:20 -07:00
Jonah Williams
b07e9faa35 Revert "Add assistiveTechnologyEnabled flag to window" (flutter/engine#5746)
Reverts flutter/engine#5740
2018-07-13 15:55:49 -07:00
Jonah Williams
71e01bf548 Add assistiveTechnologyEnabled flag to window (flutter/engine#5740) 2018-07-13 13:47:31 -07:00
Ben Konyi
9cec23702e Background Execution Implementation for iOS (flutter/engine#5539) 2018-07-13 10:55:24 -07:00
Jason Simmons
436c78278a Return a failure exit code in flutter_tester if an uncaught error occurs in a microtask (flutter/engine#5736) 2018-07-13 09:44:22 -07:00
Jonah Williams
5bf14b1e4d Custom accessibility (local context) action support for iOS and Android. (flutter/engine#5597) 2018-07-11 10:27:50 -07:00
Chris Bracken
7744bd2cd1 Revert "Remove vmservice_io.main from entry points. (#5625)" (flutter/engine#5711)
This caused failures in Flutter microbenchmarks.

See: flutter/flutter#19096 and flutter/flutter#19210

This reverts commit 042e47862e26a774d40239e1484d700dec3b53c1.
2018-07-10 16:57:23 -07:00
sjindel-google
042e47862e Remove vmservice_io.main from entry points. (flutter/engine#5625) 2018-06-29 13:10:12 +02:00
Jason Simmons
4046a804ec Add Dart entry points accessed from native code for decodeImageFromPixels (flutter/engine#5613) 2018-06-25 16:05:07 -07:00
Ryan Macnak
0474c47fec No-copy kernel loading. (flutter/engine#5580)
Required by https://dart-review.googlesource.com/c/sdk/+/60202
2018-06-21 15:44:04 -07:00
Jason Simmons
3877686f88 Maintain a FontCollection for each engine instance instead of a process-wide singleton (flutter/engine#5521) 2018-06-13 14:28:21 -07:00
Ben Konyi
a3b839a0bf IsolateNameServer reland (flutter/engine#5519)
* Reland "Added IsolateNameServer functionality (#5410)"

This reverts commit 1598c7ad7b830b298647c17a0c85f3648f6b737d.

* Fixed issue with isolate_name_server_test which caused test to timeout

* Disabled thread_annotations on Android as they aren't supported in the
NDK headers for std::mutex. Readded thread annotations to
IsolateNameServer.
2018-06-13 11:57:10 -07:00
Ben Konyi
1598c7ad7b Revert "Added IsolateNameServer functionality (#5410)" (flutter/engine#5516)
This reverts commit 851868ef29597ca8711f2de2e759069e26930c7d.
2018-06-12 17:03:13 -07:00
Ben Konyi
851868ef29 Added IsolateNameServer functionality (flutter/engine#5410)
* Added IsolateNameServer functionality, which allows for the association
of string names with isolate SendPort ids that can be used to establish
inter-isolate communications.
2018-06-12 15:50:48 -07:00
Chris Bracken
0ab5914e26 Revert "Eliminate support for Dart 1 (#5504)" (flutter/engine#5505)
Broke runtime_unittests, which are still running directly from source.

This reverts commit 6a89437fec6f67c8f6526b22dd50f3e992dd9699.
2018-06-11 18:12:10 -07:00
Chris Bracken
6a89437fec Eliminate support for Dart 1 (flutter/engine#5504)
Eliminates support for running directly from sources or script snapshots. In
debug mode, we run from a kernel snapshot; in profile and release modes, we
link in AOT-compiled code.

Renames --dart-non-checked-mode to --disable-dart-asserts since checked mode
does not make sense in Dart 2.
2018-06-11 17:00:43 -07:00
Zachary Anderson
e95110f16f Adds dynamic, interpreter configs to tools/gn (flutter/engine#5446)
Adds --dynamic and --interpreter flags to
tools/gn. These flags result in engines with
properties as follows:

--dynamic:
- JIT targeting native code on Android and
  DBC on iOS

--interpreter
- Target DBC even if running on Android.

For example:

gn --android --dynamic --interpreter --runtime-mode release

Will generate an engine:
- Without Dart asserts
- Without Observatory
- With JIT compililation to DBC

into out/android_dynamic_release_dbc
2018-06-05 14:52:52 -07:00
Alexander Aprelev
da47083cc5 Roll dart to a5e41681e55d1e74684bfff530218db556d77ee8 (flutter/engine#5467)
* Roll dart to a5e41681e55d1e74684bfff530218db556d77ee8.

* Update license
2018-06-05 08:35:44 -07:00
Jason Simmons
b3c936ed84 Log an error and cancel DartVM init if the VM/isolate snapshots are invalid (flutter/engine#5449)
See https://github.com/flutter/flutter/issues/18101
2018-06-01 17:34:25 -07:00
Alexander Markov
b7cc2b98b0 Remove --limit-ints-to-64-bits Dart VM option (flutter/engine#5442) 2018-06-01 11:05:38 -07:00
Chinmay Garde
5b5db4f2fc Allow embedders to specify a custom advisory URI and entrypoint. (flutter/engine#5408)
The Fuchsia embedder wants to specify the application name in the field for the advisory URI. This allows embedders to specify whatever they want.
2018-05-29 15:10:12 -07:00
Ben Konyi
4623d906cb Removed sync_async flag from engine which was causing snapshot errors. (flutter/engine#5367)
Will be reenabled when sync-async is on by default in flutter/flutter.
2018-05-24 17:34:25 -07:00
Ryan Macnak
e94cb4f2f9 [fuchsia] Plumbing for sharing between AOT snapshots. (flutter/engine#5351) 2018-05-24 13:24:14 -07:00
Ryan Macnak
8e2bc7b70e Reapply "Don't link the core snapshot in the Android engine." (flutter/engine#5353)
Add back the core snapshot to runtime_unittests and embedder_unittests.
2018-05-23 17:09:51 -07:00
Ryan Macnak
49c1ba1007 Revert "Don't link the core snapshot in the Android engine. (#5348)" (flutter/engine#5352)
This reverts commit d40b0dbcd2c28fbd4eadc91943f3c2c9ee0d7df5.
2018-05-23 16:11:57 -07:00
Ryan Macnak
d40b0dbcd2 Don't link the core snapshot in the Android engine. (flutter/engine#5348)
Allows one to use a different core snapshot without a custom engine build by just packaging a different one in the APK.
2018-05-23 15:56:28 -07:00
Martin Kustermann
83f32f0961 Restore functionality to run from .so file on Android (flutter/engine#5278)
Flutter AOT builds can be done on Android using .so files (instead of
separate instruction/data snapshots) using the `--build-shared-library`
flag.

Running from .so files stopped working after the engine refactoring in
82c5c8feda, which this CL restores.

Issue https://github.com/flutter/flutter/issues/17236
2018-05-23 10:11:44 +02:00
Alexander Aprelev
965ce6f3e9 Disable kernel-based expression evaluation. (flutter/engine#5290)
This should be reverted once dartbug.com/33087 is fixed.
2018-05-17 14:09:45 -07:00
Chinmay Garde
bddd31be8f Remove dart_vm_entry_points_fuchsia.txt as it has been moved to //topaz (flutter/engine#5291) 2018-05-17 13:41:36 -07:00
Ryan Macnak
aab4242b2c [fuchsia] Teach engine how to set up an isolate from a list of kernel files. (flutter/engine#5210) 2018-05-16 10:09:53 -07:00
Alexander Aprelev
2d74bd4c27 Enable flutter service protocol rpcs to run on UI isolate. (flutter/engine#5263)
With this change if flutter tools provides isolateId parameter, then VM will run the handler on that isolate. If no isolateId is provided, VM will continue running handlers as if they were registered wit Dart_RegisterRootServiceRequestCallback.

This goes towards fixing https://github.com/flutter/flutter/issues/17434
2018-05-16 07:29:20 -07:00
Ryan Macnak
9ee60830b1 Roll Dart to a5c11d7d0329432ca37e35bb249b20f60aa0aa31. (flutter/engine#5269)
Update engine for removal of Dart_ReadKernelBinary and refactored build targets.
2018-05-15 16:13:21 -07:00
Ryan Macnak
f49044eebd Revert "Roll Dart to a5c11d7d0329432ca37e35bb249b20f60aa0aa31. (#5259)" (flutter/engine#5266)
This reverts commit e2a590e926c80ba039fc70a336ea6cd341c27f12.
2018-05-15 13:26:51 -07:00
Ryan Macnak
e2a590e926 Roll Dart to a5c11d7d0329432ca37e35bb249b20f60aa0aa31. (flutter/engine#5259)
Update engine for removal of Dart_ReadKernelBinary and refactored build targets.
2018-05-15 12:57:01 -07:00
Jason Simmons
67381c0c35 Remove Blink code (flutter/engine#5218)
Fixes https://github.com/flutter/flutter/issues/12212
2018-05-10 15:57:29 -07:00
Chinmay Garde
1add7581f0 Allow explicit specification of the isolate snapshot. (flutter/engine#5193)
The mobile shells all use the same isolate snapshot. This is also the snapshot used by the service isolate. This works towards a world where the isolate snapshot is no longer a member variable of the DartVM instance. Instead, all snapshots must be specified in the run configuration. For now, the new `Shell::Create` overload will only be used by Fuchsia till I refactor `dart_vm.cc`.

There are no API updates to the mobile shells.
2018-05-07 17:28:31 -07:00
Alexander Aprelev
b76f2c6abc Roll dart to b298fc6d8f6a0e1aa841dbbdda26663d6012a79a. (flutter/engine#5155)
* Roll dart to b298fc6d8f6a0e1aa841dbbdda26663d6012a79a.

Changes since last roll:
```
b298fc6d8f Revert "[kernel] Change dill representation of doubles"
9a7e1f64a2 Revert "Revert "Fix incorrect handling of NSM forwarders and pull all logic into CFE.""
cbca4006f8 fix #30907, add library constants for all SDK libraries
61c226b4ea Only create Goma's analyzer on Linux.
24dd9b4176 Revert "Fix incorrect handling of NSM forwarders and pull all logic into CFE."
bed71b7776 Migrate and clean up the prefix negative tests.
1fcd896ed9 [VM] Avoid deadlock by allowing us to run kernel isolate from a script snapshot, fixes all dartk-sim* builders
0bc6e7217a Update expression compilation expectations.
9038b8f45f CFE support for compiling individual expressions in a context.
7d5025e814 Fix incorrect handling of NSM forwarders and pull all logic into CFE.
e2247e5e00 Put the '@' outside the revision variables.
9381424204 Fix presubmit on Windows. Dart executable is not called .bat
2a8c3515b2 Avoid strong+checked mode: strong mode supersedes checked mode
b7698dcbce Update status for Windows
8baa82413b [infra] Remove --no-preview-dart-2 flag from gardening tools
47e9039512 Don't encode strings up front; don't toString uris
4a0ac85cc3 Update co19 status
ce7329849d Fix build breakages - use platform independent path specification is test so that   it works on windows - skip test for precompiled and dartk builds as the test uses   spawnUri which is not supported in these modes
ee6351a147 [VM] Set up package config value when invoking the front end for compilation, this should fix issue 32950 "(Isolate.spawnUri() ignores packageConfig argument in Dart 2 mode.'
d1286a367e Strong mode update for swarm
fd27cc3435 Don't store bytes in the file cache.
73abd61304 Re-land "Clean up the use of deprecated API in the analyzer_plugin package".
607f4f5769 [vm] Get more helpful errors from Dart_SetVMFlags and Dart_MakeIsolateRunnable.
f044637c8b [infra] Upgrade checked in SDKs to 2.0.0-dev.52.0
dcf10816aa [infra] Add script that updates checked in SDKs
f8bea2a7e6 dart2js: Register inlined native methods for dump info
7fe8659613 dump-info: Use relative paths for library canonicalUri...
dcf4886500 [frontend-server] Add verbose option.
5087ffa481 [release] Move DDC sync-async flip to correct section in the release notes
fe7056ebaa [release] Update changelog for 2.0.0-dev.52.0
```

* Pick up another revert to fix https://github.com/flutter/flutter/issues/17214 and few more dart commits landed since:

```
4c9b712052 Revert "Don't encode strings up front; don't toString uris"
a1fbf62742 [build] Place 'extern "C"' before __attribute__, as required by gcc.
258c5172df [vm] Remove dart_mirrors_api.h.
384c55c29e Update dartdoc & dependencies to v0.19.0.
```

* fix licenses
2018-05-02 18:42:14 -07:00
Ryan Macnak
4089df7bce Define Uri.base as CWD to match the standalone Dart VM. (flutter/engine#5137)
Bug: https://github.com/flutter/flutter/issues/17118
2018-05-01 09:30:30 -07:00
Ryan Macnak
cb8d6bb865 Roll Dart to 0cc70c4a7c448078dd2aea8e45c56bc50fbbb31c. (flutter/engine#5133) 2018-04-30 13:57:32 -07:00
Alexander Aprelev
7bbee90efb Set file modified callback. (flutter/engine#5096)
This fixes dart1 hot reload regression caused by 82c5c8fed.
2018-04-26 08:43:28 -07:00
Ryan Macnak
b8b7e8e829 [fuchsia] Changes for running Dart 2 on flutter_runner. (flutter/engine#5080)
- Remove assumption that we're in Dart 2 mode only if there's a platform kernel.
 - Load core snapshots from the package instead of linking them in.
2018-04-25 13:31:13 -07:00
Jason Simmons
21d13e46fa Use the default microtask scheduler on all isolates except the UI isolate (flutter/engine#5068)
See https://github.com/flutter/flutter/issues/16846
2018-04-23 15:02:19 -07:00