Commit Graph

793 Commits

Author SHA1 Message Date
Robert Nystrom a1f87c6962 Reland "Fail synchronously if null is passed as an error to async APIs."
This is a reland of bef363bfb7

Original change's description:
> Fail synchronously if null is passed as an error to async APIs.
> 
> The first patchset is Lasse's original changes.
> 
> Change-Id: Ic5f24bcfc0ef4e82edee68d61e015b095cb5916e
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138605
> Reviewed-by: Leaf Petersen <leafp@google.com>

Change-Id: I142831dca5dc4ca266ded08d93cb427ad3fbde74
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139683
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Leaf Petersen <leafp@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
2020-03-17 00:39:31 +00:00
Robert Nystrom 54ae6c123e Make minitest and async_minitest NNBD agnostic.
Fix a couple of errors when compiling those libraries as opted in to
NNBD.

Change-Id: I7dfb629d951d8531c8bed4e765950984e9291f44
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139686
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
2020-03-16 19:58:10 +00:00
Srujan Gaddam 3cbf1f65f3 Migrate interactive_geolocation_test to async_minitest
Change-Id: I46ae16ccca91823b68421fd5c067ff68166a7cf3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139499
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-16 17:48:48 +00:00
Srujan Gaddam 47e495a89a Migrate indexeddb_* tests to async_minitest
Change-Id: Ie43d3f4610eb01cfc800556f30e93514a7ac1ac5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139498
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-16 17:48:48 +00:00
Srujan Gaddam 5f8df3af03 Migrate file_sample_test to async_minitest
Refactored to use Futures for asynchronous tests.

Change-Id: I95c7b3e0230f9c8d81b32b7323aa58ff339eadea
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139493
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-16 17:48:48 +00:00
Srujan Gaddam 739e79e863 Migrate events_test to async_minitest
Change-Id: I994d376d3a6a86be989130104fabdc6d217fc0e1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139492
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-16 17:48:48 +00:00
Srujan Gaddam 87779c4225 Migrate element_test to async_minitest
Change-Id: If99d88551b245d28a7898769703758c4747d693a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139360
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-13 23:09:07 +00:00
Srujan Gaddam 5c02523f4f Migrate html element_animate tests to async_minitest
Change-Id: Icfbcbe7aa69e337d923aa678986d0f40ba8a76dc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139301
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-13 23:09:07 +00:00
Srujan Gaddam d044aeca59 Migrate html custom_ tests to async_minitest
Change-Id: I8fa192967c5c7083e780433fce0e246cbc846c24
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139300
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-13 23:09:07 +00:00
Srujan Gaddam e60e7378b9 Migrate custom/entered_left_view tests to async_minitest
Change-Id: Ida616678a146fa7a6a0c90bba7339758a84e3aa8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139261
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-13 23:09:07 +00:00
Srujan Gaddam 799cf665ea Move html custom tests off unittest
Many of the setUps were meant to be one time setUps, so
they're only called once.

anyOf is added to async_minitest using the minitest impl.

Change-Id: Ibb2d4d0c3990d0df025fcaf6c02d49faa9733569
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139147
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-13 23:09:07 +00:00
Ryan Macnak 8ed772d37f Reland "[vm] Fix some further mirror breaks with frontend NNBD checks enabled."
Without loadLibrary()! changes.

Change-Id: I78806547ac62fa806e99eb2d5e3f2041f20ce942
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139404
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2020-03-13 17:11:52 +00:00
Ryan Macnak 42e6cf4967 Revert "[vm] Fix some further mirror breaks with frontend NNBD checks enabled."
This reverts commit daf91f56b9.

Reason for revert: Analyzer and CFE disagree

Original change's description:
> [vm] Fix some further mirror breaks with frontend NNBD checks enabled.
> 
> Change-Id: I3c52dac2244c1f7eae59d85bc637cce2cbb3faa9
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139302
> Reviewed-by: Régis Crelier <regis@google.com>
> Reviewed-by: Siva Annamalai <asiva@google.com>
> Commit-Queue: Ryan Macnak <rmacnak@google.com>

TBR=rmacnak@google.com,asiva@google.com,regis@google.com

Change-Id: I2f13dac7f2d7441f8db61543261ca28f500b8adc
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139319
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2020-03-12 22:41:41 +00:00
Ryan Macnak daf91f56b9 [vm] Fix some further mirror breaks with frontend NNBD checks enabled.
Change-Id: I3c52dac2244c1f7eae59d85bc637cce2cbb3faa9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139302
Reviewed-by: Régis Crelier <regis@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2020-03-12 20:58:56 +00:00
Srujan Gaddam 871bb5a06e Convert remaining canvasrendering tests to async_minitest
Refactored code to handle lack of setUp and tearDown and async
completion across tests.

Change-Id: I5411e7b7cf3a5687c892c8d0a33f4a6e6a440c32
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139028
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-12 02:48:50 +00:00
David Morgan a5bf30c401 Revert "Fail synchronously if null is passed as an error to async APIs."
This reverts commit bef363bfb7.

Reason for revert: Breaks google3 tests, see b/151204525.

Original change's description:
> Fail synchronously if null is passed as an error to async APIs.
> 
> The first patchset is Lasse's original changes.
> 
> Change-Id: Ic5f24bcfc0ef4e82edee68d61e015b095cb5916e
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138605
> Reviewed-by: Leaf Petersen <leafp@google.com>

TBR=leafp@google.com,rnystrom@google.com

Change-Id: Ie17c35e9d23c70a7aecd1ef292962154cf6f007d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138925
Reviewed-by: David Morgan <davidmorgan@google.com>
Commit-Queue: David Morgan <davidmorgan@google.com>
2020-03-11 10:07:49 +00:00
Robert Nystrom bef363bfb7 Fail synchronously if null is passed as an error to async APIs.
The first patchset is Lasse's original changes.

Change-Id: Ic5f24bcfc0ef4e82edee68d61e015b095cb5916e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138605
Reviewed-by: Leaf Petersen <leafp@google.com>
2020-03-10 23:42:43 +00:00
Srujan Gaddam fcb00812ed Migrate canvasrendering tests off of unittest
Migration to minitest where possible. async tests will
be migrated in a different CL.

Change-Id: I4662300bd841c56b7113adf2182ee2f8e3d7eae8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138889
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-03-10 22:04:21 +00:00
Srujan Gaddam a61e012e93 Migrate html tests using async_minitest and minitest
Move them to async_minitest.

Change-Id: Ibe850b05a838dd64ae62b30c9a979de371b24db6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138741
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-09 20:32:49 +00:00
Srujan Gaddam 3d0432eafc Add returnsNormally to async_minitest
Included change in fileapi_supported_throws_test to sanity test the
change in async_minitest.

Change-Id: I6e6b6b4eb0740ae695a85d4b3c1e2b4f8f63615a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138614
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-07 02:02:24 +00:00
Srujan Gaddam 29d4b611fb Remove html_individual_config from indexeddb_1_test
Change-Id: I1fe053dd575b8bdaeff61d9424af614eef946b7c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138242
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2020-03-06 21:32:43 +00:00
Srujan Gaddam 7b6adc6083 Remove html_individual_config from remaining html tests
Change-Id: Ic60687e434cb3fef911245982f2f959f82291766
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138267
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-03-06 06:25:51 +00:00
Srujan Gaddam a54a5eebb2 Remove html_individual_config from interactive_geolocation_test
Change-Id: I145450eac12c311c1a8c0d5684fa31bc8609fd37
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138268
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2020-03-06 00:17:51 +00:00
Nate Bosch 9d76737487 Remove support for --emit-metadata in DDC
This flag is unused and the behavior it enables was only useful along with
`dart:mirrors`.

- Remove the flag and the field on the options object.
- Prune code branches that are no longer reachable.
- Remove or inline some functions that became either empty or trivially small.
- Remove the manual check for a `dart:mirrors` import since this is handled by
  the CFE now.
- Remove references to the flag in tests.
- Remove test files which only existed to enable the flag for other tests.

Change-Id: I21bf594271fb4eeb5b73fcbf07da736e9e8d1f33
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138018
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Nate Bosch <nbosch@google.com>
Auto-Submit: Nate Bosch <nbosch@google.com>
2020-03-05 23:26:13 +00:00
Srujan Gaddam 6e8efe2a15 Remove html_config from document_register_basic_test
Change-Id: I9df37df1d6f4d0ad90d33e09e6da4b94fb668fa2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138387
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-05 23:26:11 +00:00
Srujan Gaddam 90f3dadb2e Remove html_individual_config from js_interop tests
These tests were not being run since they were not in groups before.
These tests were also not split correctly, as the js file they're
associated with was deleted and there's only one html file. An html file
per test is included and the js file is reintroduced.

Change-Id: I058ec68220bc9c96325c460523e600578f25e5f4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138264
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2020-03-05 01:23:44 +00:00
Srujan Gaddam b60e9ae71f Move js_function_getter_trust_types_test off of unittest
Both html_individual_config.dart and unittest.dart are removed. Lack of
groups before were hiding what are now compile time errors, so static
error testing is introduced to handle them.

Change-Id: I1b87f7438f2ab301207cc401254206bcd77eb072
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138244
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2020-03-04 23:56:55 +00:00
Srujan Gaddam 2215221a2d Remove html_individual_config from worker_test
Separate out the tests into separate test files due to failures for the
functional group.

Change-Id: Iafbb77e08145f04c56f807ba8f945abd8ec63d53
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138243
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2020-03-04 21:56:26 +00:00
Srujan Gaddam c0e8126716 Separate out lib_2/html/history_test
Remove html_individual_config and refactor groups out to separate test
files. The 'history' group of tests was never being run due to its name,
so 'popstateevent' introduces a new failure, although it isn't actually
new.

Change-Id: I8569ab7f8a47cd0ea60901da2afa296c9593631f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138241
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-04 21:50:56 +00:00
Jacob MacDonald 6f620781c9 delete packageRoot support in test runner package, migrate to package_config from package_resolver
Not sure what might be relying on this - going to check what the bots think about it :D

Bug: https://github.com/dart-lang/package_resolver/issues/30
Change-Id: I283d60d749a3db8a4e02dfdb1889ce56c8630620
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138324
Commit-Queue: Jake Macdonald <jakemac@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-04 20:15:19 +00:00
Srujan Gaddam 95bb6d8d19 Separate entered_left_view tests into separate test files
Note that groups are maintained since group-level setUps are applied to
each test. This removes html_individual_config.

Change-Id: I62e722252202372880d888161e9b7544b1194034
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138045
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2020-03-04 00:11:43 +00:00
Srujan Gaddam 18f366cf7e Move element_animate_test into separate test files
Remove html_individual_config and separate groups out into test files.

Change-Id: Icb0b81d97797bf78d19f100c92ce9582120beed6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138044
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-03-03 22:33:33 +00:00
Srujan Gaddam e797a066dc Separate canvasrenderingcontext2d into multiple tests
Separate each group into its own test file and have them refer to a
shared util file.

Change-Id: I3f3534b22cb6921da19eb9534af8c4ebd8a2d1b5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137727
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-02-29 01:23:30 +00:00
Srujan Gaddam 3de553f7ef Remove html_individual_config from some html tests
Only landing the ones that don't introduce rename failures in this CL.

Change-Id: I052058a0168eaad71c3e10d804bce63d9f52b194
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137647
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2020-02-27 21:13:25 +00:00
Ryan Macnak 2a5d0589ac [vm, gc] Verify the store buffer contains all old-space objects that reference new-space objects.
Speed-up ObjectSets.

Fix pointer verification before and after scavenging to set the correct mark expectation being on concurrent marking state.

Bug: https://github.com/dart-lang/sdk/issues/40780
Change-Id: Ic7ce6d5a829e41634083b0c274b9764da3f4b619
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137240
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2020-02-27 19:26:33 +00:00
Srujan Gaddam b3a1299f22 Revert "Remove html_individual_config from lib_2/html tests"
This reverts commit ccd2f7e7d1.

Reason for revert: CL broke other targets outside of try jobs

Original change's description:
> Remove html_individual_config from lib_2/html tests
> 
> Change-Id: I4a9684096f8e6d6a9af95f8a160c532e16f1be93
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137247
> Reviewed-by: Bob Nystrom <rnystrom@google.com>

TBR=rnystrom@google.com,srujzs@google.com

Change-Id: I762f7b7eec167dab3c96a03bd8df07b1c6ad7876
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137431
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2020-02-27 04:10:34 +00:00
Srujan Gaddam ccd2f7e7d1 Remove html_individual_config from lib_2/html tests
Change-Id: I4a9684096f8e6d6a9af95f8a160c532e16f1be93
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137247
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-02-27 02:25:56 +00:00
Robert Nystrom fca91e4dfd Migrate css_selector_test off unittest.
This test was actually totally broken. It called
useHtmlIndividualConfiguration(), which tells the test runner to treat
each group() as a separate test. But it had no group() calls at all, so
the test runner didn't enqueue *anything* for it. It was completely
skipped. :-O

Change-Id: Ib7b030c94d286f467601ec490308c32fb500c7a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137291
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
2020-02-26 02:17:55 +00:00
Srujan Gaddam 5237bcb12d Revert fileapi_entry_test to use unittest.dart
Bug: https://github.com/dart-lang/sdk/issues/40659

This behavior is similar to other tests where removing the dependency on
unittest leads to unhandled rejections.

Change-Id: Iba9eed271b839c764e544cc7200a132f0fb8e92b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/136480
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2020-02-19 21:00:44 +00:00
Srujan Gaddam 6ae9dedc60 Migrate html tests off of unittest.dart
Changed tests either use expect/minitest or async_helper/async_minitest
as a replacement. There are still a few outstanding tests that need to
be migrated off of unittest.dart.

Change-Id: I9231d453f61507110b5a89360dfb9e5647a5b4c7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/135420
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2020-02-15 05:01:30 +00:00
Robert Nystrom 2225d1895d Fix timer_cancel_test.
It wasn't waiting for anything, so it would consider the test done
before the expectation was even reached. Went ahead and migrated it to
the simpler expect and async_helper libraries in the process.

Change-Id: I1d498980f34985bc5d54c5a514711143c689c199
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/136080
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2020-02-15 02:40:00 +00:00
Alexander Markov 8ac7f6bce7 Revert "[vm/aot/tfa] Tree shake write-only fields"
This reverts commit ff34fd8110.

Reason: crash on the internal app
Issue: https://github.com/flutter/flutter/issues/50745

Change-Id: Ifcfbb38fa04d27558f9e78ca6b2a8637693c7d76
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/135794
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2020-02-14 02:04:01 +00:00
Robert Nystrom 0d34bf5571 Remove another one of the unittest-like libraries.
This one was literally only used for a single test. :-/

Change-Id: I316e17ecaf9a839b3c6f27ec86971a67ab52bbfb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/135782
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
2020-02-13 23:36:13 +00:00
Ryan Macnak 0fde59b21d [vm] Further mirrors and test fixes.
Bug: https://github.com/dart-lang/sdk/issues/40497
Change-Id: Ieed8a51600f92fa4dc9137bf1f4ed58bb4cfa598
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134900
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2020-02-10 20:58:05 +00:00
Alexander Markov ff34fd8110 [vm/aot/tfa] Tree shake write-only fields
So far tree shaking was removing fields which are not used at all.
This change improves tree shaking of fields so fields
which are only written or used as interface targets can be removed.

The following limitations apply:

* Field is not removed if there is a constant object with that field, as
  it may impact identity of constant objects which is an observable
  behavior.
* Field is not removed if it has a non-trivial initializer as it may
  have side-effects.
* Late final fields are not removed, as writing such fields may have
  side-effect.
* When field is removed, we may need to introduce an abstract getter
  or abstract setter if field is used as a target of an interface call.
  If a field was written, then setter would be non-abstract (but empty).

Fixes https://github.com/dart-lang/sdk/issues/35310

Change-Id: I79c00158b8eb658081a647c5dbdecde481fddb41
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134204
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2020-02-06 19:31:32 +00:00
Ryan Macnak 342535bb88 Mark typed_data/zeroed_allocation_test as slow on reload bots.
Change-Id: I7008ce0b5e68b092067f34e1f7ef6ee32487dc51
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134260
Reviewed-by: Siva Annamalai <asiva@google.com>
2020-02-04 00:41:36 +00:00
Ben Konyi 30f25ba735 [ VM / typed_data ] Fixed inconsistent results for -Float32x4.zero().clamp and -Float64x2.zero().clamp
The fuzzer found an issue where clamping negative zero would result in
conflicting answers depending on whether or not the clamp operation had
been optimized in JIT mode.

The MINPS and MAXPS instructions will always return the second operand
if the values being compared are -0 and 0, which is the opposite of what
the C implementation of clamp was doing.

Fixes https://github.com/dart-lang/sdk/issues/40426.

Change-Id: I3afb725bd0c8643758dbe753d863ba93c86ad747
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134093
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2020-02-03 21:59:48 +00:00
Ryan Macnak 1efba58d22 Reapply "[vm] Initialize large typed arrays only once."
Change-Id: I92eb6c96db97e0951ae34315ad8d744e06064b3e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/133764
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2020-02-03 17:22:05 +00:00
Mayank Patke ed441e48d0 Update all Slow tests to be Slow, Pass.
Change-Id: I610b272355b045eab80cf941210774fb12d775eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134103
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2020-02-01 00:17:42 +00:00
Victor Lima b68d95ec9e [vm] Reland support for real unboxed floating point fields in AOT
Issue https://github.com/dart-lang/sdk/issues/40404

Change-Id: Icfa801ff0640a6b27bb3c13d0b737c40452cbf7d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/133983
Commit-Queue: Victor Agnez Lima <victoragnez@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2020-01-31 12:56:31 +00:00