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
Stephen Adams
e4ffa70ba5
Redo "Flush deferred action queue"
...
This is https://github.com/dart-lang/sdk/commit/8eedb9c6527f955413e47c9350d3c5114cd89942 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
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
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
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
Stephen Adams
a22350458b
Store toString value in enum.
...
This avoids the use of an constant map per enum.
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2711183002 .
2017-02-24 15:37:43 -08:00
Konstantin Shcheglov
8d4e252fd1
Support for the 'covariant' keyword for formal parameters.
...
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review-Url: https://codereview.chromium.org/2716043003 .
2017-02-24 12:50:17 -08:00
Konstantin Shcheglov
4500bb0920
Parse optional and named parameters.
...
I'm not a big fan of the currentParameterKind stack, this information is
almost accessible from parseFormalParameter(), but we don't pass the type
to the listener.
R=ahe@google.com , paulberry@google.com
BUG=
Review-Url: https://codereview.chromium.org/2709783003 .
2017-02-23 09:55:15 -08:00
Florian Loitsch
979183decf
Add support for the new function-type syntax.
...
Fixes #27967
BUG= http://dartbug.com/27967
R=ahe@google.com , johnniwinther@google.com , paulberry@google.com , sigmund@google.com
Committed: https://github.com/dart-lang/sdk/commit/85227ba8a60332a18ae92cb1b87bf15d52a909bd
Reverted: https://github.com/dart-lang/sdk/commit/f5fc210f4f79f7e6b7ccefc24e7565e810e9dc7d
Committed: https://github.com/dart-lang/sdk/commit/e4999a631093690febb2eb90cbdbe1f9d5183455
Reverted: https://github.com/dart-lang/sdk/commit/c64c35153905fc2bf8a74c02297220385cfcbc87
Committed: https://github.com/dart-lang/sdk/commit/c289af39c36d9a5f7130a3e69b7891052652a64e
Reverted: https://github.com/dart-lang/sdk/commit/c66479f40767744d0bdd027c004583d6e32fe50f
Review-Url: https://codereview.chromium.org/2567133002 .
2017-02-23 13:36:28 +01:00
Harry Terkelsen
fce2935ef5
remove old way of collecting dependencies for dump-info
...
The new way of collecting dependencies covers everything from
the old way, and does not have any spurious dependencies that
the old way had.
Fixes https://github.com/dart-lang/sdk/issues/28849
R=johnniwinther@google.com
Review-Url: https://codereview.chromium.org/2709043002 .
2017-02-22 12:53:50 -08:00
Paul Berry
3fbeb5d064
Add contextual information about identifiers to the parser listener API.
...
R=ahe@google.com , scheglov@google.com
Review-Url: https://codereview.chromium.org/2711463005 .
2017-02-22 12:42:36 -08:00
Florian Loitsch
5af03687cf
Fix missing semicolon.
...
Fixes commit 5de7bb5782
Review-Url: https://codereview.chromium.org/2713673003 .
2017-02-22 18:51:09 +01:00
Florian Loitsch
5de7bb5782
Don't use magic strings/properties to communicate between compiler and runtime.
...
R=sra@google.com
Review-Url: https://codereview.chromium.org/2700053003 .
2017-02-22 18:32:23 +01:00
Florian Loitsch
c66479f407
Revert "Add support for the new function-type syntax."
...
This reverts commit c289af39c3 .
BUG=
Review-Url: https://codereview.chromium.org/2710973002 .
2017-02-22 17:19:35 +01:00
Florian Loitsch
c289af39c3
Add support for the new function-type syntax.
...
Fixes #27967
BUG= http://dartbug.com/27967
R=ahe@google.com , johnniwinther@google.com , sigmund@google.com
Committed: https://github.com/dart-lang/sdk/commit/85227ba8a60332a18ae92cb1b87bf15d52a909bd
Reverted: https://github.com/dart-lang/sdk/commit/f5fc210f4f79f7e6b7ccefc24e7565e810e9dc7d
Committed: https://github.com/dart-lang/sdk/commit/e4999a631093690febb2eb90cbdbe1f9d5183455
Reverted: https://github.com/dart-lang/sdk/commit/c64c35153905fc2bf8a74c02297220385cfcbc87
Review-Url: https://codereview.chromium.org/2567133002 .
2017-02-22 16:53:49 +01:00
Konstantin Shcheglov
9a3f8224a4
Pass 'classKeyword' to endClassDeclaratio() and endNamedMixinApplication().
...
R=ahe@google.com , paulberry@google.com
BUG=
Review-Url: https://codereview.chromium.org/2705333002 .
2017-02-21 22:13:01 -08:00
Konstantin Shcheglov
3fda231b1a
Pass '=' to endNamedMixinApplication().
...
R=paulberry@google.com , ahe@google.com
BUG=
Review-Url: https://codereview.chromium.org/2710803002 .
2017-02-21 13:37:01 -08:00
Dmitry Olshansky
aa1e6d4ccf
Relanding: avoiding creating strings for canonicalization
...
Do a hash table for tripples:
(list of bytes, start, end) --> canonicalized string
R=ahe@google.com
Review-Url: https://codereview.chromium.org/2702753003 .
2017-02-20 15:19:10 +01:00
Johnni Winther
00094ca18e
Split InterceptorData
...
- into InterceptorData, InterceptorDataBuilder and OneShotInterceptorData.
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2692303002 .
2017-02-20 12:55:50 +01:00
Johnni Winther
9a1ceea706
Split backend implementation of EnqueuerListener
...
- into a EnqueuerListenerBase with subclasses ResolutionEnqueuerListener and CodegenEnqueuerListener
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2693163002 .
2017-02-20 12:49:09 +01:00
Johnni Winther
c5c7fdfea3
Extract BackendUsageBuilder from BackendUsage
...
Ideally BackendUsageBuilder should only be used during closed world computation and BackendUsage afterwards.
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2694653005 .
2017-02-20 12:21:47 +01:00
Johnni Winther
8ffeb45db5
Move global dependencies to BackendUsage
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2696483005 .
2017-02-20 12:16:28 +01:00
Johnni Winther
e5a27f75e6
Move registerBackend* to BackendUsage
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2693033003 .
2017-02-20 12:10:42 +01:00
Johnni Winther
4ada4dbb99
Introduce EnqueuerListener
...
- to abstract the JavaScriptBackend coupling to Enqueuer
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2693893003 .
2017-02-20 11:53:39 +01:00
Johnni Winther
ebaff3dc66
Extract BackendUsage, MirrorsData, and CheckedModeHelpers from Backend.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2688413003 .
2017-02-20 11:44:14 +01:00
Johnni Winther
c94162a20f
Add MultiSourceInformationStrategy
...
- generate sourcemap for both engines using --use-multi-source-info
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2690083002 .
2017-02-20 11:36:15 +01:00
Johnni Winther
0f25d7da94
Refactor CompilerOutput
...
- replace EventSink by OutputSink
- add OutputType instead of uses magic values in [extension].
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2690063002 .
2017-02-20 10:34:15 +01:00
Johnni Winther
fd918a2725
Add output_type_test
...
- in preparation for refactoring of CompilerOutput
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2696513003 .
2017-02-20 10:03:53 +01:00
Emily Fortuna
d9e9f4c920
Add deferred library loaded checks in a few more places in Kernel.
...
BUG=
R=sra@google.com
Review-Url: https://codereview.chromium.org/2693423003 .
2017-02-15 18:23:19 -08:00
Peter von der Ahé
4b206de390
Use identical in token operators.
...
R=karlklose@google.com
Review-Url: https://codereview.chromium.org/2691213005 .
2017-02-15 13:42:53 +01:00
Emily Fortuna
063e60ae29
Add deferred loading to Kernel.
...
BUG=
R=sra@google.com
Review-Url: https://codereview.chromium.org/2691753002 .
2017-02-14 17:51:51 -08:00
Dmitry Olshansky
bf1eeab38e
Revert: StringCanonicalizer for Fasta
...
R=ahe@google.com , vegorov@google.com
Review-Url: https://codereview.chromium.org/2692093004 .
2017-02-14 17:24:50 +01:00
Dmitry Olshansky
58ca47d58a
Avoiding creating strings for canonicalization
...
Do a hash table for tripples:
(list of bytes, start, end) --> canonicalized string
R=ahe@google.com
Review-Url: https://codereview.chromium.org/2696803003 .
2017-02-14 15:44:36 +01:00
Johnni Winther
69e97a27f3
Handler the last native annotations
...
- we now handle `kernel/impact_test.dart --full`.
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2686243004 .
2017-02-12 10:58:36 +01:00
Stephen Adams
6af28fcb70
Fix for https://github.com/dart-lang/sdk/issues/28727
...
Use jsAst.Name uniformly in constructor parameters to prevent type
argument being renamed into a conflict.
BUG=
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2690583003 .
2017-02-10 13:19:43 -08:00
Johnni Winther
2b77a7e6b8
Support mixin application equivalence in impact_test.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2681783005 .
2017-02-10 10:55:06 +01:00
Johnni Winther
1567a4c21b
Handle Native("...") annotations in KernelBehaviorBuilder.
...
Closes #28157
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2681123004 .
2017-02-10 10:49:19 +01:00
Johnni Winther
cc60ef19f5
Handle Creates and Returns annotations in KernelBehaviorBuilder
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2685673004 .
2017-02-10 10:43:39 +01:00
Johnni Winther
68b1c1a827
Add KernelNativeBehaviorComputer
...
- to support NativeBehavior computation from KernelWorldBuilder.
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2679913006 .
2017-02-10 10:36:35 +01:00
Johnni Winther
a2b0a1bc1b
Refactor ConstantSystem
...
- to prepare for kernel based implementation
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2684783003 .
2017-02-10 10:30:16 +01:00
Johnni Winther
eb411556e6
Add NoSourceLocationMarker in old source-info engine.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2682813005 .
2017-02-10 10:03:45 +01:00
Johnni Winther
a2837b78d5
Refactor computation of NativeBehavior.
...
- to prepare for kernel based implementation.
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2686533002 .
2017-02-09 11:20:36 +01:00
Johnni Winther
1498e533e0
Remove LibraryEntity.libraryName
...
- use libraryName for LibraryElement.name if available.
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2632643002 .
2017-02-08 11:37:01 +01:00
Johnni Winther
af4b2b8e30
Extract InterceptorData from JavaScriptBackend.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2680823002 .
2017-02-08 11:04:53 +01:00
Johnni Winther
52efadefc2
Replace Backend with JavaScriptBackend.
...
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2685573002 .
2017-02-08 10:50:55 +01:00
Johnni Winther
20e2aa4f0e
Fix access to returnTypeOf
...
- a field does not have a return type.
Review-Url: https://codereview.chromium.org/2685783003 .
2017-02-08 10:08:23 +01:00
Emily Fortuna
f8f60f1ec4
Fix the loops break label test with Kernel.
...
BUG=https://github.com/dart-lang/sdk/issues/28670
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2682823002 .
2017-02-07 14:49:29 -08:00
Sigmund Cherem
ac6bf5926f
Temporarily allow to import dart:io in client apps.
...
Disclaimer: I am not in favor of this approach, but it appears to be the least
worst option at the time.
Reach out to kevmoo@ or dgrove@ for details.
R=lrn@google.com , sra@google.com , dgrove@google.com , kevmoo@google.com
Review-Url: https://codereview.chromium.org/2675023002 .
2017-02-07 14:02:04 -08:00
Emily Fortuna
0eb961850a
Fix lingering switch statement test failures.
...
BUG=
R=sra@google.com
Review-Url: https://codereview.chromium.org/2682553002 .
2017-02-07 10:38:28 -08:00