This reverts commit 9eb531bde4.
Reason for revert: Bots are red. Some tests are failing.
https://ci.chromium.org/p/dart/builders/ci.sandbox/vm-kernel-precomp-obfuscate-linux-release-x64/6039https://ci.chromium.org/p/dart/builders/ci.sandbox/vm-kernel-precomp-android-release-arm_x64/957
Original change's description:
> [vm] Add support for real unboxed floating point fields in AOT
>
> Non-nullable floating point fields (double, Float32x4, Float64x2)
> are fully unboxed in their classes.
>
> A bitmap for each class was added to the shared class table in order to keep
> track of the pointers of the classes. Since all classes in Flutter Gallery
> have less than 64 fields, the bitmap is represented by a 64 bit integer and
> fields whose offset is more than 64 words are not unboxed.
>
> The instance sizes and field offsets might change between target and host
> in cross-compilation, since the number of words used to store unboxed fields
> may differ.
>
> dart-aot Xeon
>
> SplayLatency -4.62%
> SplayHarderLatency -4.17%
> NavierStokes -2.20%
> Tracer 8.72%
> ParticleSystemPaint 2.90%
> NBodySIMD 8.35%
> NBody 25.59%
>
> With hack TFA to make doubles in Rect/Offset/Size classes in flutter non-nullable:
>
> flutter arm-v8:
>
> gallery total size: -1%
>
> matrix_utils_transform_rect_perspective -16.70% (less is better)
> matrix_utils_transform_rect_affine -31.82% (less is better)
> matrix_utils_transform_point_perspective -24.90% (less is better)
> matrix_utils_transform_point_affine) -27.26% (less is better)
> rrect_contains_bench -4.719% (less is better)
>
> Change-Id: I9ae09c9c3167d99f9efd071a92937aa51093fd1d
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131824
> Commit-Queue: Victor Agnez Lima <victoragnez@google.com>
> Reviewed-by: Martin Kustermann <kustermann@google.com>
> Reviewed-by: Ryan Macnak <rmacnak@google.com>
> Reviewed-by: Samir Jindel <sjindel@google.com>
TBR=kustermann@google.com,rmacnak@google.com,sjindel@google.com,victoragnez@google.com
Change-Id: Ic73858f6adb7f55c4129d4f46ff4731b378cb634
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134020
Reviewed-by: Zichang Guo <zichangguo@google.com>
Commit-Queue: Zichang Guo <zichangguo@google.com>
Non-nullable floating point fields (double, Float32x4, Float64x2)
are fully unboxed in their classes.
A bitmap for each class was added to the shared class table in order to keep
track of the pointers of the classes. Since all classes in Flutter Gallery
have less than 64 fields, the bitmap is represented by a 64 bit integer and
fields whose offset is more than 64 words are not unboxed.
The instance sizes and field offsets might change between target and host
in cross-compilation, since the number of words used to store unboxed fields
may differ.
dart-aot Xeon
SplayLatency -4.62%
SplayHarderLatency -4.17%
NavierStokes -2.20%
Tracer 8.72%
ParticleSystemPaint 2.90%
NBodySIMD 8.35%
NBody 25.59%
With hack TFA to make doubles in Rect/Offset/Size classes in flutter non-nullable:
flutter arm-v8:
gallery total size: -1%
matrix_utils_transform_rect_perspective -16.70% (less is better)
matrix_utils_transform_rect_affine -31.82% (less is better)
matrix_utils_transform_point_perspective -24.90% (less is better)
matrix_utils_transform_point_affine) -27.26% (less is better)
rrect_contains_bench -4.719% (less is better)
Change-Id: I9ae09c9c3167d99f9efd071a92937aa51093fd1d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131824
Commit-Queue: Victor Agnez Lima <victoragnez@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Samir Jindel <sjindel@google.com>
The new constructor creates a view of a (sub range) of the elements of another TypedData object.
It works for both typed lists and ByteData.
The advantage over the .view constructors is that it handles other views properly, including their
offsetInBytes in the start computation, which it is easy to forget to do when you call
SomethingList.view(other.buffer)
directly, and that constructor cannot compensate for the information because it only existed on the object
that the buffer was extracted from, not on the buffer itself.
Change-Id: I8abafbf2a81a32ea67f5d4c0f65dcfea08b49bb7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127321
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
This tests static analysis on the ddc patch, but not the dart2js one yet.
It also fixes js/null_test.dart to ensure it passes. Note, that test was broken independent of NNBD.
Change-Id: I5a6bfdfaac845eaba6f154d30f2c1e30199574d0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/131300
Commit-Queue: Vijay Menon <vsm@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
This reverts commit 4b5d757bea.
Reason for revert: This intentionally failing test should have been reverted immediately, after verifying that it was detected by the CI.
Original change's description:
> Reland "Reland "[infra] Add failing test to test CI systems and approvals workflow""
>
> This reverts commit 84a4bbcabc.
>
> Reason for revert: Another try to land, to get more logging data.
>
> Original change's description:
> > Revert "Reland "[infra] Add failing test to test CI systems and approvals workflow""
> >
> > This reverts commit c716068538.
> >
> > Reason for revert: Trying again to diagnose failure to copy approvals.
> >
> > Original change's description:
> > > Reland "[infra] Add failing test to test CI systems and approvals workflow"
> > >
> > > This reverts commit 25def20f5d.
> > >
> > > Reason for revert: Retrying, now that we are copying CQ approvals for all commits in the blamelist of a builder.
> > >
> > > Original change's description:
> > > > Revert "[infra] Add failing test to test CI systems and approvals workflow"
> > > >
> > > > This reverts commit e578eeb235.
> > > >
> > > > Reason for revert: The reverted commit is a test of the new approvals UI for tryjobs and the CI. It includes an intentionally failing test, that we now remove again.
> > > >
> > > > Original change's description:
> > > > > [infra] Add failing test to test CI systems and approvals workflow
> > > > >
> > > > > The failing test lib_2/collection/failing_list_test.dart is added,
> > > > > which imports dart:io. So it will be a compile-time failure on
> > > > > some dart2js platforms, and a run-time failure on dart:io.
> > > > >
> > > > > This commit is just to test the UI and backend for test failure
> > > > > approvals on tryjobs and on CI results. It will be reverted after
> > > > > the CI builders have run on it.
> > > > >
> > > > > Change-Id: Icc3d11e72511cb0dbd9a62cb4fa80e754c203c8c
> > > > > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127883
> > > > > Reviewed-by: Jonas Termansen <sortie@google.com>
> > > >
> > > > TBR=whesse@google.com,sortie@google.com
> > > >
> > > > Change-Id: I32b900e25dc562ac88f5cb496cdbca726fc70445
> > > > No-Presubmit: true
> > > > No-Tree-Checks: true
> > > > No-Try: true
> > > > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127885
> > > > Reviewed-by: William Hesse <whesse@google.com>
> > >
> > > TBR=whesse@google.com,sortie@google.com
> > >
> > > Change-Id: I64e528131c779c8d20c007ff715b57b599cd3f07
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127886
> > > Reviewed-by: William Hesse <whesse@google.com>
> > > Reviewed-by: Jonas Termansen <sortie@google.com>
> >
> > TBR=whesse@google.com,sortie@google.com,athom@google.com
> >
> > Change-Id: Icf68fd813d5f8f98d5ebf40c34e35811e8fffaf5
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127892
> > Reviewed-by: William Hesse <whesse@google.com>
>
> TBR=whesse@google.com,sortie@google.com,athom@google.com
>
> Change-Id: Ic63f74bf660e71e5e1853a391013368ce640bbc1
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127895
> Reviewed-by: William Hesse <whesse@google.com>
> Reviewed-by: Jonas Termansen <sortie@google.com>
TBR=whesse@google.com,sortie@google.com,athom@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: Ib82dadb2c82f2329164b29e60997320b775c104d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130378
Reviewed-by: William Hesse <whesse@google.com>
This reverts commit 84a4bbcabc.
Reason for revert: Another try to land, to get more logging data.
Original change's description:
> Revert "Reland "[infra] Add failing test to test CI systems and approvals workflow""
>
> This reverts commit c716068538.
>
> Reason for revert: Trying again to diagnose failure to copy approvals.
>
> Original change's description:
> > Reland "[infra] Add failing test to test CI systems and approvals workflow"
> >
> > This reverts commit 25def20f5d.
> >
> > Reason for revert: Retrying, now that we are copying CQ approvals for all commits in the blamelist of a builder.
> >
> > Original change's description:
> > > Revert "[infra] Add failing test to test CI systems and approvals workflow"
> > >
> > > This reverts commit e578eeb235.
> > >
> > > Reason for revert: The reverted commit is a test of the new approvals UI for tryjobs and the CI. It includes an intentionally failing test, that we now remove again.
> > >
> > > Original change's description:
> > > > [infra] Add failing test to test CI systems and approvals workflow
> > > >
> > > > The failing test lib_2/collection/failing_list_test.dart is added,
> > > > which imports dart:io. So it will be a compile-time failure on
> > > > some dart2js platforms, and a run-time failure on dart:io.
> > > >
> > > > This commit is just to test the UI and backend for test failure
> > > > approvals on tryjobs and on CI results. It will be reverted after
> > > > the CI builders have run on it.
> > > >
> > > > Change-Id: Icc3d11e72511cb0dbd9a62cb4fa80e754c203c8c
> > > > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127883
> > > > Reviewed-by: Jonas Termansen <sortie@google.com>
> > >
> > > TBR=whesse@google.com,sortie@google.com
> > >
> > > Change-Id: I32b900e25dc562ac88f5cb496cdbca726fc70445
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127885
> > > Reviewed-by: William Hesse <whesse@google.com>
> >
> > TBR=whesse@google.com,sortie@google.com
> >
> > Change-Id: I64e528131c779c8d20c007ff715b57b599cd3f07
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127886
> > Reviewed-by: William Hesse <whesse@google.com>
> > Reviewed-by: Jonas Termansen <sortie@google.com>
>
> TBR=whesse@google.com,sortie@google.com,athom@google.com
>
> Change-Id: Icf68fd813d5f8f98d5ebf40c34e35811e8fffaf5
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127892
> Reviewed-by: William Hesse <whesse@google.com>
TBR=whesse@google.com,sortie@google.com,athom@google.com
Change-Id: Ic63f74bf660e71e5e1853a391013368ce640bbc1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127895
Reviewed-by: William Hesse <whesse@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
This reverts commit c716068538.
Reason for revert: Trying again to diagnose failure to copy approvals.
Original change's description:
> Reland "[infra] Add failing test to test CI systems and approvals workflow"
>
> This reverts commit 25def20f5d.
>
> Reason for revert: Retrying, now that we are copying CQ approvals for all commits in the blamelist of a builder.
>
> Original change's description:
> > Revert "[infra] Add failing test to test CI systems and approvals workflow"
> >
> > This reverts commit e578eeb235.
> >
> > Reason for revert: The reverted commit is a test of the new approvals UI for tryjobs and the CI. It includes an intentionally failing test, that we now remove again.
> >
> > Original change's description:
> > > [infra] Add failing test to test CI systems and approvals workflow
> > >
> > > The failing test lib_2/collection/failing_list_test.dart is added,
> > > which imports dart:io. So it will be a compile-time failure on
> > > some dart2js platforms, and a run-time failure on dart:io.
> > >
> > > This commit is just to test the UI and backend for test failure
> > > approvals on tryjobs and on CI results. It will be reverted after
> > > the CI builders have run on it.
> > >
> > > Change-Id: Icc3d11e72511cb0dbd9a62cb4fa80e754c203c8c
> > > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127883
> > > Reviewed-by: Jonas Termansen <sortie@google.com>
> >
> > TBR=whesse@google.com,sortie@google.com
> >
> > Change-Id: I32b900e25dc562ac88f5cb496cdbca726fc70445
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127885
> > Reviewed-by: William Hesse <whesse@google.com>
>
> TBR=whesse@google.com,sortie@google.com
>
> Change-Id: I64e528131c779c8d20c007ff715b57b599cd3f07
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127886
> Reviewed-by: William Hesse <whesse@google.com>
> Reviewed-by: Jonas Termansen <sortie@google.com>
TBR=whesse@google.com,sortie@google.com,athom@google.com
Change-Id: Icf68fd813d5f8f98d5ebf40c34e35811e8fffaf5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127892
Reviewed-by: William Hesse <whesse@google.com>
This reverts commit 25def20f5d.
Reason for revert: Retrying, now that we are copying CQ approvals for all commits in the blamelist of a builder.
Original change's description:
> Revert "[infra] Add failing test to test CI systems and approvals workflow"
>
> This reverts commit e578eeb235.
>
> Reason for revert: The reverted commit is a test of the new approvals UI for tryjobs and the CI. It includes an intentionally failing test, that we now remove again.
>
> Original change's description:
> > [infra] Add failing test to test CI systems and approvals workflow
> >
> > The failing test lib_2/collection/failing_list_test.dart is added,
> > which imports dart:io. So it will be a compile-time failure on
> > some dart2js platforms, and a run-time failure on dart:io.
> >
> > This commit is just to test the UI and backend for test failure
> > approvals on tryjobs and on CI results. It will be reverted after
> > the CI builders have run on it.
> >
> > Change-Id: Icc3d11e72511cb0dbd9a62cb4fa80e754c203c8c
> > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127883
> > Reviewed-by: Jonas Termansen <sortie@google.com>
>
> TBR=whesse@google.com,sortie@google.com
>
> Change-Id: I32b900e25dc562ac88f5cb496cdbca726fc70445
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127885
> Reviewed-by: William Hesse <whesse@google.com>
TBR=whesse@google.com,sortie@google.com
Change-Id: I64e528131c779c8d20c007ff715b57b599cd3f07
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127886
Reviewed-by: William Hesse <whesse@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
This reverts commit e578eeb235.
Reason for revert: The reverted commit is a test of the new approvals UI for tryjobs and the CI. It includes an intentionally failing test, that we now remove again.
Original change's description:
> [infra] Add failing test to test CI systems and approvals workflow
>
> The failing test lib_2/collection/failing_list_test.dart is added,
> which imports dart:io. So it will be a compile-time failure on
> some dart2js platforms, and a run-time failure on dart:io.
>
> This commit is just to test the UI and backend for test failure
> approvals on tryjobs and on CI results. It will be reverted after
> the CI builders have run on it.
>
> Change-Id: Icc3d11e72511cb0dbd9a62cb4fa80e754c203c8c
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127883
> Reviewed-by: Jonas Termansen <sortie@google.com>
TBR=whesse@google.com,sortie@google.com
Change-Id: I32b900e25dc562ac88f5cb496cdbca726fc70445
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127885
Reviewed-by: William Hesse <whesse@google.com>
The failing test lib_2/collection/failing_list_test.dart is added,
which imports dart:io. So it will be a compile-time failure on
some dart2js platforms, and a run-time failure on dart:io.
This commit is just to test the UI and backend for test failure
approvals on tryjobs and on CI results. It will be reverted after
the CI builders have run on it.
Change-Id: Icc3d11e72511cb0dbd9a62cb4fa80e754c203c8c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/127883
Reviewed-by: Jonas Termansen <sortie@google.com>
Arguments to simd type constructors were being checked in the bootstrap
natives entrypoint but not elsewhere. Checking for null in Dart code
ensures that we don't accidentally miss these checks in AOT.
The changes to sdk_nnbd are required in order to ensure the number of
arguments passed to native code match the number of arguments from the
non-NNBD implementation (we needed to remove the implicit type args
parameter).
Fixes https://github.com/dart-lang/sdk/issues/39518
Change-Id: Iaf7d8790c154f1e85db613b6dc84004c8013df9a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/126905
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
Original change was broken by the fact that DDC expects all types marked as
native have all their superclasses marked as native when the super classes are
compiled.
In this case `MapMixin` from dart:collection was not being marked as native and
the only reason it was working before was that the library dependency enforced
the necessary order.
* Now `MapMixin` is explicitly marked as native.
* Added a test case to use some of the API on `window.localStorage` that is
inherited from the MapMixin class.
Change-Id: I1584bfb86179016ee12c2acc5cfbbe81d086841e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/126906
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
This test already has several GCs under the default growth policy, so the verifier runs enough with this flag omitted.
Also, re-enable the background compiler in this test.
Change-Id: I5b874984f45766be76d5ab429df84c2f64bf7e17
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123330
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Added ability to recognize a MethodMirror to be a mirror of an extension member
Added ability to recognize a VariableMirror to be a mirror of a static
extension field.
Change-Id: I56715a491bba0d8cafb2796ebb755bd339e147c6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120760
Reviewed-by: Siva Annamalai <asiva@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Siva Annamalai <asiva@google.com>