This change synchronizes the try_benchmarks script with the commands
currently used to build for benchmarking and adds a test that the
IsolateSpawn benchmark continues to work.
Change-Id: I37066fb8a246e0003bdccd7c4dbb5b84060b30f6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170982
Reviewed-by: Martin Kustermann <kustermann@google.com>
This CL refactors NativeCallingConvention to be a standalone class that
can be unit tested separately. It no longer uses Function to calcalate
the native ABI, but a NativeFunctionType.
The BaseMarshaller no longer extends NativeCallingConvention but nests
it instead.
The actual unit tests will be added in a follow up CL.
Issue: https://github.com/dart-lang/sdk/issues/44117
Change-Id: Ib529cbaa7e52b51ebdec831eeb772faee153335c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170981
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Change-Id: Ief025612b5f3e14079716460eae030d09f6f5e7b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170862
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Change-Id: I6db1a2a5dd4501b16fa947a8fa1c337592947ade
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170842
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Change-Id: Ie55532aa1471d2c9df1f32ab9444e977f984f7e9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170861
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Change-Id: Ie5ba98ac96c05c4890c4b80fbdfe673f2ad64d96
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170860
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
When I first implemented this I thought that checking exports wasn't
needed, since it's not allowed for a migrated library to re-export
symbols defined in an unmigtated library. But it turns out we still
do need to include exports in the check, since there might be migrated
libraries that are only reachable in the transitive dependency graph
via an export, and we need to check that *those* libraries don't
import unmigrated code.
Bug: https://github.com/dart-lang/sdk/issues/44061
Change-Id: I280b4117373a3320fc1efe65abe24e344199754c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170840
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
There are no functional differences between the previous and the new
commit. Though it brings in a fix for a test which is required for
further dart->g3 rolls.
Issue b/172649154
Change-Id: I923246aa9db1973e213257a086f0065ad862ca4c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170881
Reviewed-by: Clement Skau <cskau@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
In error reporting on assignability where the expression has type
`Null` we use a special messages that doesn't state that
"'Null' is nullable". Cases where `Null` is part of the type or where
the expression of type `Null` is derived from a collection are not
special cased.
Closes#43998Closes#44093
Change-Id: Ic0c79e6362f2365eb3fe8222ccd2ef8fac4f188d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170433
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
The CL add a 'flags' to MethodInvocation with the properties isInvariant
and isBoundsSafe. The former is used for to marks safe calls in unified
collection encoding. Both can be used further by backends.
The CL also adds a 'fileEndOffset' to Block. This is current set for
block declared in used code.
In response to https://github.com/dart-lang/sdk/issues/43994
and https://github.com/dart-lang/sdk/issues/43965
Change-Id: I579fc2928331465dfc2c152ccfd21297b12cfdd3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170695
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
The old phrasing was confusing because it was unclear which libraries
were being referred to.
Bug: https://github.com/dart-lang/sdk/issues/44061
Change-Id: Id68f28fcd8ba5a80763e7bf86d6774289701d381
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170841
Auto-Submit: Paul Berry <paulberry@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
* `reference.hasElementFor` implies that `reference.element` is not null.
* Using `whereType` prevents an explicit cast from being needed.
Change-Id: I800f7183292ecd0bb6370a381b1d0b924b7f5a61
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170744
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Currently `IsCurrentThreadReader()` can only be called outside
safepoint operations. We'll loosen that restriction for future CLs
which require calling this method inside safepoint operations.
Change-Id: I23a99cc535df47c1dbd41f92e29e669e7ddd921f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170685
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
A smoke test to exercise alignment of structs with various field types
to see how they are aligned on the stack. Only contains small structs
because most ABIs only pass structs less than 16 bytes on the stack.
Especially tests iOS64, where `AlignOf(struct{float32;float32;}) == 4`
but `AlignOf(struct{int32;int32;}) == 8` due to the special treatment
of homogenous floats in the arm64 ABI combined with iOS decision to not
align everything on the stack to at least word size.
Test tested on iOS64 through Flutter.
structs_by_value_tests_configuration.dart is the only non-generated
file.
The tests are tested in the dependent CL. Tests are ignored in status
file and are un-ignored in dependent CL.
Tests for https://github.com/dart-lang/sdk/issues/36730.
Change-Id: I6ec4523208db740b8ea3f8a4ab1e5717f1088467
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170691
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Auto-Submit: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
The added test show that we generate a super call to the wrong target
in some forwarding stubs. The target should have been the mixed in
member but is instead the super member that it overrides.
Change-Id: If7536628370ba69405cbedef969e727a5d220058
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170684
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-11-05 irina.arkhipets@gmail.comFixes#602: New tests for least and greatest closures added.
2020-11-05 sgrekhov@unipro.ru#926. Rewrite io/Process/start_A01_t02 test to work on precompiled environment
2020-11-05 sgrekhov@unipro.ru#932. Rewrite HttpRequestUpload/onLoad_A01_t01 test to send correct HttpRequest
2020-11-04 sgrekhov@unipro.ruFixes#956. Don't expect extension invocation on type dynamic
2020-11-04 karlklose@users.noreply.github.com Convert some multi-tests to static error framework (#958)
2020-11-03 irina.arkhipets@gmail.comFixes#602: dynamic tests for least and greatest closures updated.
2020-11-03 irina.arkhipets@gmail.comFixes#602: tests for least and greatest closures added.
2020-10-28 sgrekhov@unipro.ru#926. Fix two Process tests to use 'process_test' tool
2020-10-28 sgrekhov@unipro.ru#926. Rewrite two Process tests to use 'process_test' tool
2020-10-28 sgrekhov@unipro.ruFixes#955. Expect less specific error for typed_data tests
2020-10-26 sgrekhov@unipro.ruFixes#954. Change the line where we expect an error for CFE
2020-10-20 sgrekhov@unipro.ruFixes#912. Abstract variables syntax tests added
2020-10-19 sgrekhov@unipro.ru#912. More external variables syntax tests added
2020-10-17 sgrekhov@unipro.ru External variables syntax test added
2020-10-16 sgrekhov@unipro.ru#912. More test for static analysis of external variables added
2020-10-15 sgrekhov@unipro.ru#912. Test for static analysis of external variables added
2020-10-14 sgrekhov@unipro.ru#912. Test for static analysis if abstract variables added
Cq-Include-Trybots: dart/try:analyzer-nnbd-linux-release-try,analyzer-nnbd-win-release-try,dart2js-nnbd-linux-x64-chrome-try,ddc-nnbd-linux-release-chrome-try,front-end-nnbd-linux-release-x64-try,front-end-nnbd-win-release-x64-try,vm-kernel-nnbd-linux-debug-x64-try,vm-kernel-nnbd-linux-release-simarm64-try,vm-kernel-nnbd-linux-release-x64-try,vm-kernel-nnbd-mac-release-x64-try,vm-kernel-nnbd-win-release-x64-try,vm-kernel-precomp-nnbd-linux-release-x64-try,vm-kernel-precomp-nnbd-win-release-x64-try
Change-Id: Id9cde784918faa4e891da8c4cb448d415a7a18aa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170680
Reviewed-by: William Hesse <whesse@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
There is no need to call from C++ into Dart code just so the Dart code
can return a constant. Instead we can get the constant directly in C++
code.
This avoids calling into Dart code during class finalization to evaluate
enum constants.
Issue https://github.com/dart-lang/sdk/issues/36097
Change-Id: Ia0b09482188be2d0ce83ce9ffc20e5c15e52d070
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170540
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
The copy was accidentally removed when removing bot.py.
TEST=BUILDBOT_BUILDERNAME="debianpackage-linux-be" ./tools/run_debian_build.sh
Change-Id: I9264824246a96a83f171602571d2073243776d64
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170686
Reviewed-by: William Hesse <whesse@google.com>