Joshua Litt
dffb06bca9
[dart2js] Address some feedback in algorithm_state.dart.
...
Change-Id: I9c96ca7294318d7f28f692791ba5ce9518f18f97
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/212023
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2021-09-20 19:03:23 +00:00
Stephen Adams
7731eea468
[dart2js] Instantiation.== and Instantiation.hashCode
...
Change-Id: Ic4e9c882b27a6490a913899d74141ff73c4aebab
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/210981
Reviewed-by: Mayank Patke <fishythefish@google.com >
Commit-Queue: Stephen Adams <sra@google.com >
2021-08-25 21:07:02 +00:00
Joshua Litt
455bd6ba75
[dart2js] Streamline dependency processing in deferred_load.dart.
...
This is an extensive refactor of deferred_load.dart. The major changes
are:
* An 'EntityData' class to better model some of the polymorphism in the
algorithm
* An 'AlgorithmState' class to simplify updates.
* An 'EntityDataCollector' to encapsulate collecting dependencies from
'EntityData' objects.
NOTE: This patch may change output file numbering.
Change-Id: I8849eb23a430a05f0efebd0537670b096719e8eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/208780
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2021-08-18 16:44:13 +00:00
Joshua Litt
902709109c
[dart2js] Upstream deferred_loading_test_helper.
...
Change-Id: I24b06251902d142afd1a5c62a8137459a283348e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/206663
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Joshua Litt <joshualitt@google.com >
2021-07-13 23:26:49 +00:00
Mark Zhou
4b858b95f8
[dart2js] Moving 'legacyJavascript' flag to shipping.
...
This effectively enables ES6 language features in Dart2JS by default.
Also adapts some tests to expect ES6 Method Definition syntax.
Change-Id: Iec36fbf9d22afd1083f7560a16fa73fbf15fb85c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/205741
Commit-Queue: Mark Zhou <markzipan@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Reviewed-by: Joshua Litt <joshualitt@google.com >
2021-07-09 20:32:56 +00:00
Joshua Litt
7b9cdf0cf0
[dart2js] Defer holder names.
...
Change-Id: I32f8d1462674ba035d945ac160e28d643303fa44
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195300
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
2021-05-06 01:15:12 +00:00
Joshua Litt
298795da23
[dart2js] Create DeferredHolderExpression to defer holder names.
...
Change-Id: I5a6b2f56d0e63e8979687e16841a8696b9c6507f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/194113
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
2021-04-14 18:27:25 +00:00
Joshua Litt
28aa79ddd7
Reland "[dart2js] Add support for bundling fragments."
...
This is a reland of d0f55d0e42
Original change's description:
> [dart2js] Add support for bundling fragments.
>
> Also changes the default to bundling rather than interleaving fragments.
>
> Change-Id: Id79d03a8a8b5be7465b8535f6c9c47dfad120c9c
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/191484
> Commit-Queue: Joshua Litt <joshualitt@google.com >
> Reviewed-by: Stephen Adams <sra@google.com >
> Reviewed-by: Sigmund Cherem <sigmund@google.com >
Change-Id: I0347ddb6dd93eb57f0abc259fc477ec3a9d7231b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/194323
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Joshua Litt <joshualitt@google.com >
2021-04-08 17:46:50 +00:00
Joshua Litt
05a0e79a76
Revert "[dart2js] Add support for bundling fragments."
...
This reverts commit d0f55d0e42 .
Reason for revert: Investigating 5% spike in memory usage
Original change's description:
> [dart2js] Add support for bundling fragments.
>
> Also changes the default to bundling rather than interleaving fragments.
>
> Change-Id: Id79d03a8a8b5be7465b8535f6c9c47dfad120c9c
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/191484
> Commit-Queue: Joshua Litt <joshualitt@google.com >
> Reviewed-by: Stephen Adams <sra@google.com >
> Reviewed-by: Sigmund Cherem <sigmund@google.com >
TBR=sra@google.com ,sigmund@google.com ,joshualitt@google.com
Change-Id: I3d61f14981d9314163974c6a38d5a5e0d76b5a98
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/194322
Reviewed-by: Joshua Litt <joshualitt@google.com >
Commit-Queue: Joshua Litt <joshualitt@google.com >
2021-04-07 23:53:20 +00:00
Joshua Litt
d0f55d0e42
[dart2js] Add support for bundling fragments.
...
Also changes the default to bundling rather than interleaving fragments.
Change-Id: Id79d03a8a8b5be7465b8535f6c9c47dfad120c9c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/191484
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2021-04-07 18:30:47 +00:00
Joshua Litt
617e05ee49
[dart2js] Update deferred loading test to golden pre and final fragments.
...
Change-Id: If452f1bf1e36c3dcf5947beff6ff07be01674217
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/194202
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2021-04-07 16:48:17 +00:00
Joshua Litt
5ca3b45541
[dart2js] Remove unused 'classesOnlyNeededForRti' field.
...
Change-Id: I424fd9fcf6c7f8a9d0f724b5599fc96242bb9042
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/192943
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Mayank Patke <fishythefish@google.com >
2021-03-31 17:30:29 +00:00
Joshua Litt
fd4eefc22d
[dart2js] Move determination of fragments to emitter phase.
...
Change-Id: I0aaf02a8900445fc76b87de17e21b6488ca2fe46
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/191240
Reviewed-by: Stephen Adams <sra@google.com >
Commit-Queue: Joshua Litt <joshualitt@google.com >
2021-03-23 21:55:53 +00:00
Joshua Litt
6f6afa4dba
[dart2js] Add component detection to deferred fragment merge.
...
This is to avoid merging unrelated code into language files.
Change-Id: Ief514d0761fbb471a0460c78db35c0a07bf78f6d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/191800
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
2021-03-22 18:57:24 +00:00
Joshua Litt
c5c80648b9
[dart2js] Land accurate compute merging dependency algorithm.
...
Change-Id: If47a670631c4c4d63b0fd834a01dc30275b416d8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/191241
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Joshua Litt <joshualitt@google.com >
2021-03-17 17:27:44 +00:00
Joshua Litt
dcd5735345
[dart2js] Create cycle-free trivial merge algorithm.
...
Change-Id: I20c8a5741121ceecee0520adffdc2f51d6f1c291
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/188360
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2021-03-02 00:10:50 +00:00
Sigmund Cherem
912005267d
[web] rename suite dart2js -> web.
...
Change-Id: I46be49b2effec3e38a3dc44cd45cfe736f77fa78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/182680
Commit-Queue: Sigmund Cherem <sigmund@google.com >
Reviewed-by: Joshua Litt <joshualitt@google.com >
Reviewed-by: Nicholas Shahan <nshahan@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
2021-02-04 23:11:32 +00:00
Joshua Litt
7d64e39572
[dart2js] Add flag to specify maximum number of deferred code fragments.
...
Change-Id: Ifd85eb01c0be9de9ebbb157df616ef8765a4d5b5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158366
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
2020-12-08 21:21:40 +00:00
Joshua Litt
043bebcd02
[dart2js] Fixes to dart2js unit tests to support nnbd by default.
...
Change-Id: I440dddd34a62bfe8c0f3fd563888acb680c2b031
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/168141
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2020-10-20 18:40:44 +00:00
Joshua Litt
d2b0e39144
[dart2js] Add stressful unit / integation tests for deferred loading.
...
Change-Id: I456af72961803bb24b089c6f3655e9d8ef2a7396
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/167044
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
2020-10-13 17:55:58 +00:00
Joshua Litt
cbbd76ef2c
[dart2js] Port deferred_loading_test to features.
...
Change-Id: I683f82fe1096963392f78f9dd3b640b66765b8b9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/166604
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2020-10-09 21:10:17 +00:00
Johnni Winther
fc158b1616
[dart2js] Evaluate implicit constants in scope visitor
...
Change-Id: I2351571a665c8ffff8e9d57649fbf42b483e747b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/142983
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Mayank Patke <fishythefish@google.com >
2020-09-29 20:13:08 +00:00
Joshua Litt
c086f08285
[dart2js] Add regression test for #35311 .
...
Change-Id: Ia3069fc10800debefa74d53bd987a06ada04df50
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/160702
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Joshua Litt <joshualitt@google.com >
2020-08-27 23:26:47 +00:00
Joshua Litt
29c0795f48
[dart2js] Flip new deferred split flag.
...
Change-Id: Ifa795b96f2d2fa685072f314508b761b77a39bf2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/160161
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Commit-Queue: Joshua Litt <joshualitt@google.com >
2020-08-26 23:17:05 +00:00
Joshua Litt
eab26cd2bd
[dart2js] Flip flag to defer class types.
...
Change-Id: Ia1f913a01f2be006158967b145db3ee34b297cfe
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155660
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2020-08-17 20:25:09 +00:00
Joshua Litt
c060abfa45
[dart2js] Add regression test for 43055.
...
Change-Id: Ia83ada924f63ae7d8dfbe034415e5fd8f241cd2e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158680
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2020-08-15 00:01:00 +00:00
Joshua Litt
d384b7a0a6
[dart2js] Gather only required classes in deferred_load.
...
Currently we are gathering classes for all supertypes, but we only need
to gather classes for applied mixins and super classes.
Change-Id: Ie55a6587b0bc9cacf5061a52d2d9a9ec5fdbf2eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156761
Commit-Queue: Joshua Litt <joshualitt@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2020-08-07 16:26:15 +00:00
Mayank Patke
3b67681bcc
[dart2js] Clean up (pre-)NNBD unit test configurations.
...
Change-Id: Ife85aafa90b1b0347fabb6e95f3d6c00c5307cd2
Bug: https://github.com/dart-lang/sdk/issues/42063
Fixes: https://github.com/dart-lang/sdk/issues/42063
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/152440
Reviewed-by: Joshua Litt <joshualitt@google.com >
Commit-Queue: Mayank Patke <fishythefish@google.com >
2020-06-25 18:44:32 +00:00
Joshua Litt
20faaa5d94
[dart2js] Move dart2js unit tests to pkg/compiler/test.
...
Change-Id: Ib18f554c1076f27a3f7c0df5a36410da41a1f467
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148784
Reviewed-by: Paul Berry <paulberry@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2020-05-28 18:51:11 +00:00