Nate Biggs
9d5cb9524e
[dart2js] Decouple static type visitor and impact builder.
...
Change-Id: Ib477d8fdcadb4f9699914aa6a2e6eb4facab61b0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/347944
Reviewed-by: Mayank Patke <fishythefish@google.com >
2024-02-07 00:19:33 +00:00
Stephen Adams
4c0de8ed89
[dart2js] sync* fixes
...
Change the calling convention of the sync* body to fix bugs and avoid allocations.
- Body takes the controlling _SyncStarIterator as a parameter.
- `yield` assigns directly to the `_current` field and returns.
- `yield*` calls a method on the controlling iterator (rather than returning the iterable). This avoids an allocation to wrap the iterable, a type test to distinguish `yield` from `yield*`, and allows the `get:iterator` call to happen in the dynamic scope of try-catch surrounding the `yield*` to that it will catch any exceptions.
- Avoid using IIFE to bind constants just to call the body.
- Use a dummy body to avoid the need to testing termination of the body.
Tests now passing:
co19_2/Language/Statements/Yield_and_Yield_Each/Yield_Each/execution_sync_t05
language_2/sync_star/move_past_end_test
language_2/sync_star/sync_star_exception_current_test
language_2/sync_star/sync_star_exception_iterator_test
language_2/sync_star/sync_star_exception_nested_test
language_2/sync_star/sync_star_exception_test
Bug: #51992
Change-Id: I397b470e121b8d71242ac28b3130637b78a1d0dc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/294685
Reviewed-by: Mayank Patke <fishythefish@google.com >
Commit-Queue: Stephen Adams <sra@google.com >
2023-04-18 22:24:24 +00:00
Mayank Patke
a2307a1110
[dart2js] Use CFE static types for variables in null-safe libraries.
...
Fixes : #49588
Change-Id: Ib0de059f17660450385253061dc1e313a5671309
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/289060
Reviewed-by: Stephen Adams <sra@google.com >
Commit-Queue: Mayank Patke <fishythefish@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2023-03-17 19:44:34 +00:00
Kallen Tu
5adeb03c2f
Add ServerSocketBase to remove dynamic invocations of secure sockets in _HttpServer.
...
Change-Id: If8379fe73eeabd3aef99fcb85b4a5fd8414f8a18
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/260980
Reviewed-by: Lasse Nielsen <lrn@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2022-11-10 22:28:48 +00:00
Kallen Tu
a5ad599cf0
Reland "Cast errors to HttpExceptions and add lint to convert to tidy up dynamic calls in core libraries."
...
`catchError` in http_impl also handles SocketExceptions.
Change-Id: I865bdd6bde4272f6cb657a86a1c78734e4ee331c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/263183
Reviewed-by: Lasse Nielsen <lrn@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-10-21 18:28:23 +00:00
Kallen Tu
446ee14abf
Cast sockets that set _owner and read closedReadEventSent of _NativeSocket
...
Change-Id: I0d3b24f503dcb167dd039e47228a665ca3d38453
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/262272
Reviewed-by: Lasse Nielsen <lrn@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-10-11 13:12:33 +00:00
Kallen Tu
7e1890d78b
Revert "Cast errors to HttpExceptions and add lint to convert to tidy up dynamic calls in core libraries."
...
This reverts commit 5b7bd563d3 .
Reason for revert: Broke VM tests, not always HttpException.
Original change's description:
> Cast errors to HttpExceptions and add lint to convert to tidy up dynamic calls in core libraries.
>
> Change-Id: I7ea73b232d13baf84e834d742ebc16f2a081e727
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/262626
> Commit-Queue: Kallen Tu <kallentu@google.com >
> Reviewed-by: Lasse Nielsen <lrn@google.com >
> Reviewed-by: Leaf Petersen <leafp@google.com >
TBR=lrn@google.com ,leafp@google.com ,kallentu@google.com ,dart-scoped@luci-project-accounts.iam.gserviceaccount.com
Change-Id: I1777750c07b84b267d0b62dbfe93d54a6bfee7ae
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/263180
Reviewed-by: Leaf Petersen <leafp@google.com >
2022-10-07 20:11:57 +00:00
Kallen Tu
5b7bd563d3
Cast errors to HttpExceptions and add lint to convert to tidy up dynamic calls in core libraries.
...
Change-Id: I7ea73b232d13baf84e834d742ebc16f2a081e727
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/262626
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Lasse Nielsen <lrn@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2022-10-07 18:12:28 +00:00
Kallen Tu
b3e57bd2f7
Remove dynamic call in _JsonMap.
...
Change-Id: I73297a65a59aeefee9f170aa640b9d5d20e7bf9e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/262271
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2022-10-06 18:12:02 +00:00
Kallen Tu
ce7c036db2
Make _detachRaw an external method of Socket to avoid dynamic calls.
...
Change-Id: Iba40ba3b0f0defea7efa750688386c7fe21bbae7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/261260
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2022-10-05 01:44:22 +00:00
Kallen Tu
646886c968
Type Socket in _HttpConnection to avoid dynamic invocations.
...
Change-Id: I55b4312dcf6f2af79f183f21b8d2722f62f0aece
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/258515
Reviewed-by: Nate Bosch <nbosch@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-09-30 19:29:56 +00:00
Kallen Tu
80c6f0e824
Clean up dynamic invocations in dart2js core library files.
...
Change-Id: I3967a13585b2e3c8e0859bef9d08f181f88bf1f5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/260450
Reviewed-by: Stephen Adams <sra@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-09-26 22:26:37 +00:00
Kallen Tu
7578614639
Remove dynamic invocations from custom elements in html_dart2js.
...
Registering custom elements are already broken -- see: https://github.com/dart-lang/sdk/issues/49536 . There are plans on deleting this code at some point. This current change cleans up dynamic invocations in the deprecated code.
Removes cruft on already-deprecated code and doing it now because I assume dynamic clean up will finish before the issue resolves.
Change-Id: Ic6250c139c5d9b08d88650110f55442a7bf5dd42
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/259247
Reviewed-by: Sigmund Cherem <sigmund@google.com >
Reviewed-by: Lasse Nielsen <lrn@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2022-09-20 16:16:06 +00:00
Kallen Tu
c903b8a3f5
Expose the members of _ProcessImpl to avoid dynamic invocations.
...
Change-Id: I676f3d5742bffb79bc0815ff55d09d09a5afe305
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/258640
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2022-09-16 21:28:30 +00:00
Kallen Tu
af20d93e56
Type RandomAccessFile in io_resource_info to avoid dynamic invocation of path
...
There's one only one path for creating a _FileResourceInfo which comes from RandomAccessFile. Type the `file` field to avoid a dynamic call to `.path`.
Change-Id: Ia1041d5b221d0496af3dd177562263b31cdf4157
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/259106
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-09-15 20:55:39 +00:00
Kallen Tu
aad35b490f
Remove dynamic invocations in error handling in directory_impl.
...
Change-Id: Idb1ac4490efd74a2ff98a3d9f0c57a74299ce413
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/258512
Reviewed-by: Lasse Nielsen <lrn@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-09-14 07:24:53 +00:00
Kallen Tu
7055da30a7
Remove dynamic invocations from io file classes.
...
Change-Id: Iaf556ca462b9d962557b627c59220101f384ae51
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/258380
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2022-09-09 17:45:45 +00:00
Kallen Tu
10a1ac18ab
Eliminate dynamic [] calls from common, directory_impl and link.
...
Change-Id: I91be3303d957d5c746e33099b6238b51243ba60f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/257140
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-09-08 17:17:03 +00:00
Kallen Tu
8264bd94d1
Revert "Eliminate dynamic call() in html_dart2js in _EventStreamSubscription."
...
This reverts commit f630a7c07d .
Reason for revert: Remove the `is` check since it's more costly than removing a dynamic call for web.
Original change's description:
> Eliminate dynamic call() in html_dart2js in _EventStreamSubscription.
>
> Change-Id: Ia4a300c210bc505f71cc3bfb1a1b911c96c1aa53
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/256703
> Commit-Queue: Kallen Tu <kallentu@google.com >
> Reviewed-by: Leaf Petersen <leafp@google.com >
> Reviewed-by: Lasse Nielsen <lrn@google.com >
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I36b2f8cedc5f8b5235832ea29ea5eb40e2e8dc92
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/257421
Reviewed-by: Srujan Gaddam <srujzs@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-09-02 18:44:53 +00:00
Kallen Tu
f630a7c07d
Eliminate dynamic call() in html_dart2js in _EventStreamSubscription.
...
Change-Id: Ia4a300c210bc505f71cc3bfb1a1b911c96c1aa53
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/256703
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Reviewed-by: Lasse Nielsen <lrn@google.com >
2022-09-01 00:27:29 +00:00
Kallen Tu
e0884c91f1
Eliminate dynamic call of .createElement in html_dart2js.
...
Change-Id: I76ab0063eee4213f20483172c16f86e651536945
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/256740
Reviewed-by: Lasse Nielsen <lrn@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
2022-08-30 15:48:40 +00:00
Kallen Tu
2bb03e4344
Eliminate .style and ._initKeyboardEvent from html_dart2js.
...
Change-Id: I16ea832e8eff2b2aea02fb73e1cf7ee9702923af
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/256581
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Lasse Nielsen <lrn@google.com >
2022-08-29 20:06:45 +00:00
Kallen Tu
bcb9fd28fb
Eliminate [] dynamic call in io_resource_info.
...
Change-Id: I80a30d8c31ecc41f2ebf6f7fc8ac6dd41225ea4e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/256600
Reviewed-by: Lasse Nielsen <lrn@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-08-29 18:53:15 +00:00
Kallen Tu
78a9f52544
Eliminate dynamic calls with file and subscription in stdio.
...
Change-Id: I3dbdb2c14729fd1c74e733a59234df5035386cfd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/256249
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-08-26 20:21:21 +00:00
Kallen Tu
fa7ffc9ac1
Eliminate dynamic calls in SVGElement.
...
Change-Id: I60c48145fb8ffe5cc5d1c20f86cfa9f067c2705c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/256026
Reviewed-by: Lasse Nielsen <lrn@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
Reviewed-by: Srujan Gaddam <srujzs@google.com >
2022-08-23 18:21:40 +00:00
Kallen Tu
64c3ea27da
Eliminate dynamic calls to remove and tagName.
...
Additionally, fixed the template for html_dart2js so the generator would generate the correct code.
Change-Id: I2172bb10db413169b86690faa027365ff72e3d68
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/255763
Reviewed-by: Srujan Gaddam <srujzs@google.com >
Reviewed-by: Lasse Nielsen <lrn@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-08-22 17:27:39 +00:00
Kallen Tu
add88f24c2
Eliminate dynamic calls to firstChild, remove and _innerHtml.
...
Change-Id: If984af54620727929ea8deb182226ce8d6514bb6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/255581
Reviewed-by: Lasse Nielsen <lrn@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-08-18 21:50:14 +00:00
Kallen Tu
d0e27df1e3
Eliminate dynamic calls when getting the environment.
...
Statically type String variables to avoid dynamic calls for substring or concatenation.
Change-Id: If485243dc0580fd1f4e53ec4cf69cb3819a57b5d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/255301
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Kallen Tu <kallentu@google.com >
2022-08-17 21:00:23 +00:00
Sigmund Cherem
447e802aaa
[web]: remove a couple dynamic calls in the sdk
...
Change-Id: I59d4697e981417a695a08b21f3b350fa6f84f484
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/232962
Reviewed-by: Stephen Adams <sra@google.com >
Commit-Queue: Sigmund Cherem <sigmund@google.com >
2022-02-14 21:44:20 +00:00
Leaf Petersen
4dbd35f04d
Reland "Simplify json parser and eliminate dynamic calls."
...
This is a reland of e77ea8a17b . I've
undone the change to the name of the platformScript setter, restoring
the previous behavior of accepting anything and casting.
TEST=Existing tests.
Change-Id: I7e36935ef3784035769527dc5624191f38faaa40
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/232487
Reviewed-by: Lasse Nielsen <lrn@google.com >
Commit-Queue: Leaf Petersen <leafp@google.com >
2022-02-11 16:06:37 +00:00
Alexander Aprelev
4fb3d2afcf
Revert "Simplify json parser and eliminate dynamic calls."
...
This reverts commit e77ea8a17b .
Reason for revert: broke g3 builder, blocking dart->engine rolls
Original change's description:
> Simplify json parser and eliminate dynamic calls.
>
> Tighten types to eliminate some dynamic calls from the core libraries.
> Also remove some unnecessary abstraction from the json parser.
>
> TEST=Existing tests for the library.
> Change-Id: Ieb4cdec5b8c26709b5f70774c392bd373a203113
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/231800
> Reviewed-by: Lasse Nielsen <lrn@google.com >
> Reviewed-by: Alexander Markov <alexmarkov@google.com >
> Commit-Queue: Leaf Petersen <leafp@google.com >
TBR=lrn@google.com ,leafp@google.com ,alexmarkov@google.com
Change-Id: Iec15058734d07c1966d43c1559a35313f59f8009
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/232322
Reviewed-by: Alexander Aprelev <aam@google.com >
Commit-Queue: Alexander Aprelev <aam@google.com >
2022-02-10 03:16:20 +00:00
Leaf Petersen
e77ea8a17b
Simplify json parser and eliminate dynamic calls.
...
Tighten types to eliminate some dynamic calls from the core libraries.
Also remove some unnecessary abstraction from the json parser.
TEST=Existing tests for the library.
Change-Id: Ieb4cdec5b8c26709b5f70774c392bd373a203113
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/231800
Reviewed-by: Lasse Nielsen <lrn@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Leaf Petersen <leafp@google.com >
2022-02-10 00:07:49 +00:00
Kevin Moore
7d8459dc3c
dart:_http: apply and fix most of pkg:lints recommended lints
...
TEST=N/A
Change-Id: I3e3f0cd1d94743fbbe8cfcc5723eb38608be2a8b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/217503
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
Auto-Submit: Kevin Moore <kevmoo@google.com >
2021-10-21 16:33:15 +00:00
asiva
fb90f11f4b
[dart:io] - Fix incorrect setting of socket options for UNIX-DOMAIN sockets
...
- setting of UNIX-DOMAIN socket options was not throwing the correct error
- listen in HTTPServer was trying to set TCP_NODELAY for UNIX-DOMAIN sockets
Fixes :
https://github.com/dart-lang/sdk/issues/45977
https://github.com/dart-lang/sdk/pull/45978
https://github.com/dart-lang/sdk/issues/45975
TEST=new test cases added
Change-Id: Ie0341f26b1ba0f9423c08a8de968053a2af1c730
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/199640
Commit-Queue: Siva Annamalai <asiva@google.com >
Reviewed-by: Alexander Aprelev <aam@google.com >
2021-05-14 01:53:48 +00:00
Stephen Adams
b7d2dbe9b5
[js_runtime] Cleanup some dynamic calls
...
Change-Id: I7fe4dab27f1d6fb2e52a171bd8f373c3decc0b7e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/197562
Reviewed-by: Mayank Patke <fishythefish@google.com >
Commit-Queue: Stephen Adams <sra@google.com >
2021-05-07 22:47:47 +00:00
Ben Konyi
c4bfca9b6a
[ dart:io / package:vm_service ] Add HTTP request profiling service
...
extensions
This change adds HTTP request profiling support to the dart:io service
extensions and removes HTTP request/response body logging to the
timeline due to memory constraints.
Fixes https://github.com/dart-lang/sdk/issues/44950
TEST=pkg/vm_service/test/get_http_profile_test.dart
Change-Id: I85642296c3d6595197f3365022477c7685c452bf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/189881
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Kenzie Schmoll <kenzieschmoll@google.com >
2021-03-24 23:01:03 +00:00
Ben Konyi
a44409615f
[ Service / dart:io ] Rework previously unused dart:io service extensions
...
This CL is mostly modernizing existing Process and File profiling code
that was never made public. Updated the service extension responses to
be more consistent with the rest of the service protocol.
Related to https://github.com/dart-lang/sdk/issues/41455 .
Change-Id: I116b3cd1424980e4ec8133672901990776c1d9c7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157160
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2020-09-18 20:15:56 +00:00
Stephen Adams
8d68480746
[dart2js] Fix global type analysis
...
https://github.com/dart-lang/sdk/issues/43366
Fixed: 43366
Change-Id: Iac8247c31fa268186c8f2e3f52e0be1cac062598
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/162247
Commit-Queue: Stephen Adams <sra@google.com >
Reviewed-by: Mayank Patke <fishythefish@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2020-09-11 04:07:41 +00:00
Sigmund Cherem
b83d06e4f8
Fix order of async callback arguments
...
This was noticed when running the benchmarks/Calls/dart/Calls.dart with
sound-null-safety.
The only fix that was needed is to swap the argument order, but I also changed
to add the type promotion to make these errors stand out statically.
Change-Id: If47b04596d2da9d30961705fd858f2f2ba2b12c9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/153062
Reviewed-by: Stephen Adams <sra@google.com >
Commit-Queue: Sigmund Cherem <sigmund@google.com >
2020-07-01 23:06:24 +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
Stephen Adams
0ccc96f470
[dart2js] remove more old-rti code
...
Change-Id: I462dd6aec1bf39c16e340699b2803254fd4fc941
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151345
Commit-Queue: Stephen Adams <sra@google.com >
Reviewed-by: Joshua Litt <joshualitt@google.com >
2020-06-17 20:31:01 +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