Commit graph

44985 commits

Author SHA1 Message Date
Paul Berry f55f111d7a Update kompile.status to reflect e260980624
Commit e260980624 changed some Fasta
tests from "crash" to "fail".

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2725683003 .
2017-02-28 15:04:03 -08:00
Jennifer Messerly 18c4f5cf08 fix future onError handler wrapping to avoid cast error
the return type was invalid, which caused a runtime cast failure. Many of the onError handlers return `void` which is not assignable to T.

This was discovered in internal testing as we attempted to run DDC against the unforked SDK sources.

R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2718643003 .
2017-02-28 14:59:48 -08:00
Konstantin Shcheglov 4d4275d36e Replace the sequence isInstanceOf/assign with assist-with-cast in ExpressionParserTestMixin.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2719403004 .
2017-02-28 14:31:41 -08:00
John McCutchan 6cb83f037e Address comments from Matthias on previous CL
original CL: https://codereview.chromium.org/2692803006/

R=hausner@google.com

Review-Url: https://codereview.chromium.org/2720723006 .
2017-02-28 14:02:32 -08:00
Konstantin Shcheglov 25fb3dabdb Parse ThisExpression with Fasta.
R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2719083007 .
2017-02-28 13:52:01 -08:00
Konstantin Shcheglov e260980624 Parse SuperExpression with Fasta.
R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2721973002 .
2017-02-28 13:48:57 -08:00
Konstantin Shcheglov f7d379a494 Run ExpressionParserTestMixin tests with Fasta.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2726543003 .
2017-02-28 13:33:52 -08:00
Vyacheslav Egorov 9fd4823e9d VM: Fix simdbc and darkp builds.
- When generating app-aot snapshot we are currently running Kernel isolate
in the precompiler mode, which means we can't have field guards enabled.

- DBC does not support field guards so flags must be correctly initialized.

BUG=
TBR=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2720893004 .
2017-02-28 22:20:44 +01:00
Vyacheslav Egorov a9a756df8e VM: Allow configuring use_field_guards on the per-isolate basis and include it into snapshot features.
We have tests that disable it but we train app-jit snapshot for Kernel with field guards enabled so
we need to make sure that Kernel isolate runs with correct settings matching the settings at the time
when app-jit snapshot was created.

BUG=
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2715213008 .
2017-02-28 21:17:17 +01:00
Vyacheslav Egorov a5e1f89583 VM: Fix an app-jit related shutdown race.
IsolateData contains AppSnapshot which might own some HeapPage-s, so we can't
destroy IsolateData in the Dart_IsolateShutdownCallback, because some thread
running in the isolate (e.g. background compiler) might still touch
thoses pages or objects they host.

We need to delay destruction of AppSnapshot until after the isolate shutdown.

Current API does not allow that, so we introduce a new isolate lifecycle
callback - Dart_IsolateCleanupCallback, which is invoked at the end of the
isolote lifecycle when things like background compiler have been stopped
and no Dart code is supposed to run.

BUG=
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2720723005 .
2017-02-28 21:10:04 +01:00
Vyacheslav Egorov ff9c17504a VM: Make Dart::FeaturesString respect isolate flags controlling asserts and type checks.
Before it simply looked at FLAG_enable_{asserts/type_checks}.

We allow disabling or enabling type checks / asserts for newly created isolates
through Dart_IsolateFlags even when they are enabled globally through
FLAG_enable_{asserts/type_checks} flags.

This change allows isolates to use app-jit snapshots trained with type checks /
asserts disabled as long as isolate itself has type check and asserts disabled,
independent of whether FLAG_enable_{asserts/type_checks} is set globally or not.

Additionally disable type checks and asserts on Kernel isolate even if flags
FLAG_enable_{asserts/type_checks} are set.

This change allows to train Kernel app-jit snapshot once and use it both for

$ dart --dfe=...

and for

$ dart --checked --dfe=...

configurations.

BUG=
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2720123004 .
2017-02-28 21:05:29 +01:00
Jennifer Messerly 373149e003 fix ListMixin _filter and sort to work in strong mode
R=lrn@google.com

Review-Url: https://codereview.chromium.org/2715833004 .
2017-02-28 10:37:28 -08:00
Florian Loitsch 169bcf98b7 Fix typo in IoSink.flush documentation.
Review-Url: https://codereview.chromium.org/2720953004 .
2017-02-28 19:34:27 +01:00
Florian Loitsch 37b7a6719a Fix typo in URI documentation.
Fixes #28556
BUG= http://dartbug.com/28556
R=lrn@google.com

Review-Url: https://codereview.chromium.org/2723563003 .
2017-02-28 19:32:50 +01:00
Stephen Adams 1ae1ec7df4 Remove HRuntimeType implementation
Use the legacy RTI format, which should be replaced with something that lets types and tests be cached and amortized.

R=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2722753002 .
2017-02-28 09:33:32 -08:00
Asger Feldthaus 3a7529a363 Remove status file sections for the CPS IR.
BUG=
R=kmillikin@google.com

Committed: 2d6c90a6b3
Review-Url: https://codereview.chromium.org/2720513006 .
2017-02-28 17:11:19 +01:00
Asger Feldthaus e7b9672b3e Revert "Remove status file sections for the CPS IR."
This reverts commit 2d6c90a6b3.

BUG=

Review-Url: https://codereview.chromium.org/2720283002 .
2017-02-28 17:08:04 +01:00
John McCutchan 6c0a2af761 Have observatory_tool always invoke pub with no HTTP_PROXY environment variable set
Fixes #28865

R=zra@google.com

Review-Url: https://codereview.chromium.org/2724483003 .
2017-02-28 07:59:55 -08:00
Zach Anderson 7af47d5ea9 [test.dart]: Fix output encoding in case of non-utf8 test output
R=kustermann@google.com

Review-Url: https://codereview.chromium.org/2721683002 .
2017-02-28 07:50:28 -08:00
Peter von der Ahé 2e0e3b918f Always provide a field for context.
R=karlklose@google.com

Review-Url: https://codereview.chromium.org/2723513002 .
2017-02-28 16:49:19 +01:00
John McCutchan 7e55c12e03 Add SILENT_OBSERVATORY environment variable to Observatory web server
BUG=
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2715423002 .
2017-02-28 07:33:33 -08:00
Kevin Millikin f31b6d5e2c Reland "Track the 'awaiter return' call stack..."
Original CL: https://codereview.chromium.org/2692803006/

Original commit message:
Tracking the awaiter return call stack:

- [x] Each async function closure now knows who is awaiting on their
return. This is effectively the asynchronous equivalent of the 'frame pointer'.
- [x] Each async* function closure now knows how is listening on their
stream. This is effectively the asynchronous equivalent of the 'frame pointer'.

Detecting uncaught exceptions in async functions:

- [x] Code object keeps a map from :await_jump_var to token position
- [x] Exception Handlers keep track if they are generated (as part of compilation) or directly from user code
- [x] Debugger maps :await_jump_var to a specific try index

R=johnmccutchan@google.com

Review-Url: https://codereview.chromium.org/2725623003 .
2017-02-28 16:13:41 +01:00
Peter von der Ahé 86cad48993 Create Fasta bootstrap test.
R=karlklose@google.com

Review-Url: https://codereview.chromium.org/2719863003 .
2017-02-28 15:49:03 +01:00
Jens Johansen 773e90869c [Fasta] Save parent in TypeDeclarationBuilder
I get errors with library parent not set for some tests
(e.g. service tests). This fixes that.

BUG=
R=ahe@google.com

Review-Url: https://codereview.chromium.org/2726533002 .
2017-02-28 15:02:21 +01:00
Florian Loitsch 7fa4496e51 Add documentation for mutating operations of unmodifiable maps.
Simply states that the operation is not supported.

Fixed #28918
BUG= http://dartbug.com/28918
R=lrn@google.com

Review-Url: https://codereview.chromium.org/2722613004 .
2017-02-28 14:41:38 +01:00
Asger Feldthaus 2d6c90a6b3 Remove status file sections for the CPS IR.
BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2720513006 .
2017-02-28 14:40:06 +01:00
Lasse R.H. Nielsen 2d137a8375 Mark analyzer test as slow. Has timeout on windows.
Is slowest test in batch even when it doesn't time out.

R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2720873003 .
2017-02-28 14:10:26 +01:00
Asger Feldthaus ccaff30f00 Fix a type error in reify/transformation/builder.dart.
A call to toList was missing after .map().

BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2725623002 .
2017-02-28 13:38:10 +01:00
Kevin Millikin b31e24f33a Update a test expectation.
A pair of tests that were crashing the front end are now passing.

BUG=
R=kustermann@google.com

Review-Url: https://codereview.chromium.org/2718203003 .
2017-02-28 13:03:54 +01:00
Kevin Millikin a0965a641f Revert "Track the 'awaiter return' call stack..."
Revert a pair of commits that cause failure of the Kernel continuation
transformer:

  cba7e3e79a
  4fe4f177de

R=kustermann@google.com

Review-Url: https://codereview.chromium.org/2718353002 .
2017-02-28 12:46:31 +01:00
Lasse R.H. Nielsen 804f3dfdd8 Update documentation of Object.hashCode.
Fixes #28844

BUG= http://dartbug.com/28844
R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2708233003 .
2017-02-28 11:48:40 +01:00
Lasse R.H. Nielsen 6a77f268bb Revert "Add bnf.sty to github, since it is referenced by the latex language spec file."
R=eernst@google.com

Review-Url: https://codereview.chromium.org/2723623003 .
2017-02-28 11:35:35 +01:00
Karl Klose 5df5395559 closure conversion: Do not set Context.parent if the value is null
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2716573002 .
2017-02-28 11:23:00 +01:00
Karl Klose 5a42bf8062 Support closures in initializers
Moved the code to modify the current block with context updates to its own class and added another class for context updates in initializer expressions.

R=ahe@google.com

Review-Url: https://codereview.chromium.org/2712473003 .
2017-02-28 11:16:41 +01:00
Stephen Adams e4ffa70ba5 Redo "Flush deferred action queue"
This is 8eedb9c652 plus status file updates

TBR=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2726463002 .
2017-02-27 21:10:36 -08:00
Stephen Adams 07cd6a9f57 Revert "Flush deferred action queue"
TBR=johnniwinther@google.com
BUG=

Review-Url: https://codereview.chromium.org/2723453004 .
2017-02-27 21:06:22 -08:00
Peter von der Ahé c2f7f52e42 Run dartfmt on pkg/front_end/lib.
R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2718113003 .
2017-02-28 05:52:41 +01:00
Stephen Adams 8eedb9c652 Flush deferred action queue
It is possible for deferred actions to be queued without enqueing
classes.  This can happen when resolving a typedef for mirrors - a
cyclic check action may be added as the only change.

TBR=johnniwinther@google.com

Review-Url: https://codereview.chromium.org/2718253003 .
2017-02-27 19:12:54 -08:00
Steve Messick b3ed30b822 Add assists to move Flutter widgets up and down one level.
Fixes:
https://github.com/flutter/flutter-intellij/issues/461

R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2724473002 .
2017-02-27 15:03:51 -10:00
Florian Schneider 74d2f37a86 Improve ctrl-C handling in ninja.py.
This enables interrupting by pressing ctrl-C.

BUG=
R=zra@google.com

Review-Url: https://codereview.chromium.org/2725493002 .
2017-02-27 15:38:45 -08:00
Zachary Anderson 6c08487f47 [Fuchsia] Adds an option to create_sdk.py to skip binary stripping
create_sdk.py tries to use the host 'strip' instead of the
'strip' from the build's toolchain.

fixes #28900

R=whesse@google.com

Review-Url: https://codereview.chromium.org/2720613004 .
2017-02-27 15:35:11 -08:00
Ryan Macnak c4f6728027 gen_snapshot:
- Consistently accept hypens or underscores in option names.
 - Replace --snapshot_kind=none with --dependencies-only, since the former is ambiguous as to whether an existing core snapshot needs to be read. Important when using an embedder-specific dart: library.
 - Don't try to canonicalize file paths for the snapshot pieces since this fails if there isn't already a file on disk.

R=asiva@google.com, goderbauer@google.com

Review-Url: https://codereview.chromium.org/2707383007 .
2017-02-27 15:18:27 -08:00
Regis Crelier 269aaf0305 Properly handle instantiator when allocating or cloning closure instance.
This should fix the vm-kernel bots.

Review-Url: https://codereview.chromium.org/2723643002 .
2017-02-27 14:51:27 -08:00
John McCutchan 4fe4f177de Fix build failures in precompiled runtime
BUG=

Review-Url: https://codereview.chromium.org/2719083004 .
2017-02-27 14:36:19 -08:00
John McCutchan cba7e3e79a Track the 'awaiter return' call stack use it to detect uncaught exceptions in async functions
Tracking the awaiter return call stack:

- [x] Each async function closure now knows who is awaiting on their
return. This is effectively the asynchronous equivalent of the 'frame pointer'.
- [x] Each async* function closure now knows how is listening on their
stream. This is effectively the asynchronous equivalent of the 'frame pointer'.

Detecting uncaught exceptions in async functions:

- [x] Code object keeps a map from :await_jump_var to token position
- [x] Exception Handlers keep track if they are generated (as part of compilation) or directly from user code
- [x] Debugger maps :await_jump_var to a specific try index

Fixes #27242

R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2692803006 .
2017-02-27 14:16:15 -08:00
Konstantin Shcheglov 69063303ac Add support for field formal function typed formal parameters.
Plus a couple of new tests.

R=paulberry@google.com, ahe@google.com
BUG=

Review-Url: https://codereview.chromium.org/2720763003 .
2017-02-27 14:01:26 -08:00
Konstantin Shcheglov b86388e3ed Support for function typed formal parameters.
R=paulberry@google.com, ahe@google.com
BUG=

Review-Url: https://codereview.chromium.org/2715203003 .
2017-02-27 12:50:08 -08:00
Konstantin Shcheglov 6d231ad0ef Extract ExpressionParserText from SimpleParserTest.
So that we can run this portion of tests with Fasta.

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2717233004 .
2017-02-27 12:47:57 -08:00
Stephen Adams 50b6107eec dart2js: HGetLength may become fixed
We may not know initially that the input to HGetLength is fixed-length, but discover so later.
Most notably this happens with --trust-type-annotations, since the HTypeKnown for 'trusting' the type hides the underlying type, but it also happens as a consequence of local dataflow and other optimizations.

BUG=
R=efortuna@google.com

Review-Url: https://codereview.chromium.org/2713393002 .
2017-02-27 12:33:21 -08:00
Florian Schneider cf5a62efc5 Print user-friendly name when parsing invalid redirecting constructor.
Addressing comments on https://codereview.chromium.org/2710363002/

R=hausner@google.com

Review-Url: https://codereview.chromium.org/2715243005 .
2017-02-27 12:20:39 -08:00