Commit graph

97627 commits

Author SHA1 Message Date
Ryan Macnak 99bb8aa4a5 [build, test_runner] Update to NDK 27.
Notably, this carries us across the gcc->llvm transition.

Change-Id: I46203749c64c7ef0f52de40abcd4a073517cb06f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330949
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2023-10-18 22:38:23 +00:00
Mayank Patke 5a0ff4ceb1 [dart2js] Lower JS_GET_FLAG in phase 0b kernel transformer
Also adds `JS_FALSE` to replace uses of `JS_GET_FLAG(false)`. See the
doc comment for details.

Change-Id: I33f89f158c1955a19fa299f22c50d51e36ede3d8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330171
Commit-Queue: Mayank Patke <fishythefish@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Nate Biggs <natebiggs@google.com>
2023-10-18 22:32:43 +00:00
Mayank Patke 580384a28e [dart2js] Group modular and global kernel transformations.
This CL reorganizes our collection of kernel transformations into
"modular" and "global" ones. Modular (phase 0a) transformations are
those that can be run on each library before we have "linked" the full
program AST. Global (phase 0b) transformations are those that are run
over the full program AST.

Although we colloquially refer to multiple transformations of each kind,
there is actually a single modular (resp. global) `Transformer`, which
merges all the required transformations into a single AST pass.

Change-Id: I8f53cba6fc9a8aab106188ec3597ab194dd0cde0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330170
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Nate Biggs <natebiggs@google.com>
2023-10-18 22:32:43 +00:00
Konstantin Shcheglov 13791e4fee Extension type. Report when the representation type is a bottom type.
See 3ecf3a729a

Change-Id: If58e262fb913a11edd8f0ecf3f2dcba6879ee65b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331086
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-10-18 20:56:39 +00:00
Keerti Parthasarathy 5bed3cc23a Update create getter/setter assist to support extension types.
Change-Id: I5ba6e74437aec2d8e67a79b13e4fa013af08d6d7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330992
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
2023-10-18 20:35:23 +00:00
Konstantin Shcheglov e638793918 Extension type. Issue 53752. Update ToSourceVisitor.
Bug: https://github.com/dart-lang/sdk/issues/53752
Change-Id: I334bb2f01fcb9327c2a04f2252740501a3874fe7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330993
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-10-18 20:29:12 +00:00
Konstantin Shcheglov 6968295dfb Extension type. Mark private representation fields promotable.
Change-Id: I502f82ed272856bdbd6642c06f0e54ddef4d5b01
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330990
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-10-18 20:23:36 +00:00
Konstantin Shcheglov dd3b0aa02b Extension type. Report 'covariant' modifier even in instance methods.
Change-Id: I3a1d8f671117a4ac3ec7e8b3dcdcaa5c152fc07f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331084
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-10-18 19:37:52 +00:00
Konstantin Shcheglov b292e8b894 Extension type. Update WRONG_TYPE_PARAMETER_VARIANCE_IN_SUPERINTERFACE tests.
...to keep thme better aligned with 7206f91a55

Change-Id: I52003ff6e6cfdf7b5bb427c65ef536f6d5a55f7a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330989
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-10-18 19:15:30 +00:00
asiva 9b521df35f [VM/Tests] Remove dart_2 and standalone_2 test directories
- Remove test directories standalone_2 and dart_2
- Remove all references to standalone_2 and dart_2 in test scripts

TEST=ci

Change-Id: I574868e274558efbbe12fe8b6408bbe77a888583
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330982
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Siva Annamalai <asiva@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2023-10-18 18:59:51 +00:00
Konstantin Shcheglov 312645e478 Extension type. Issue 53790. Report duplicate types in 'implements'.
Bug: https://github.com/dart-lang/sdk/issues/53790
Change-Id: Id980bc43e561148b59763fa0547754c3692b4469
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330988
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-10-18 18:25:29 +00:00
Keerti Parthasarathy c31be01bbe Improve message when generating error ARGUMENT_TYPE_NOT_ASSIGNABLE for records.
Fixes BUG: #53580

Change-Id: I4c5a7b5147875ced2319ba36a396067a5ce1a657
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330668
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2023-10-18 17:56:49 +00:00
Konstantin Shcheglov 4f438f287d Extension type. Report an error on 'covariant' modifier on the representation field.
Add a few more parser tests.

Change-Id: I9ba22f0216cd3dcb2b104d8005429445c1e87637
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331083
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-10-18 17:51:49 +00:00
Ömer Sinan Ağacan feb81fc63f [dart2wasm] Optimize some string operations to array.copy
Change-Id: Ic14396cd6843666dd8ebfd6db0ed6056ea7cacc0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331043
Commit-Queue: Ömer Ağacan <omersa@google.com>
Reviewed-by: Jackson Gardner <jacksongardner@google.com>
2023-10-18 17:45:36 +00:00
pq a6674f7b7c remove stale test mode codegen support
Change-Id: Ie3d103404e64139caa9eb2f15a4688fc94ab8e49
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331085
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2023-10-18 17:43:05 +00:00
Ömer Sinan Ağacan fa976d75be [dart2wasm] Simpify string handling in core
Now that we have our own `dart:convert` implementations in dart2wasm
targets (1) and the internal types are now internally public (2), this
simplifies some of the string implementation code by using the
implementation classes directly.

Note: stringref patch can be ignored, it's currently unused and I'm only
updating it to make it compile. It will be rewritten based on
`JSStringImpl` in [3].

To keep the CLs as small as possible, this CL does not do any of the
optimizations we can do now, such as optimizing
`OneByteString._setRange` to Wasm `array.copy` instructions. These will
be done in follow-up CLs.

[1]: https://dart-review.googlesource.com/c/sdk/+/330781
[2]: https://dart-review.googlesource.com/c/sdk/+/330783
[3]: https://dart-review.googlesource.com/c/sdk/+/316628

Change-Id: I92918d58a565ad32f5a221430e02d81562f03b00
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331040
Reviewed-by: Jackson Gardner <jacksongardner@google.com>
Commit-Queue: Ömer Ağacan <omersa@google.com>
2023-10-18 17:37:33 +00:00
Danny Tuppeny 59294606cf [dds/dap] Expand truncated strings and suppress quotes when copying to clipboard + using repl
Normally in the debugger we return truncated values, but there are some cases where the user expects the full value. The legacy DAP handled these, but the new DAP did not.

With this change:

- "Copy Value" (context: clipboard) actions will always copy the full string (and without quotes)
- the REPL/Debug Console will include the full untruncated string

Fixes https://github.com/Dart-Code/Dart-Code/issues/4730

Change-Id: I6e43f8e21ca606d4ea1e9f1c30a111d7a4d82f20
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/326642
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Helin Shiah <helinx@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2023-10-18 17:34:59 +00:00
pq 5b7f451360 avoid_type_to_string extension type tests
Fixes: https://github.com/dart-lang/linter/issues/4783

Change-Id: I1477048ea933cdc7f11706a9caab3f0769d66f86
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331082
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2023-10-18 16:34:34 +00:00
pq 9266dd12ed add an "internal" rule state
Change-Id: I740d95c179005b820dab01b4cd0cd7b0976f288b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331080
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2023-10-18 16:27:22 +00:00
Danny Tuppeny e3451cb526 [analyzer] Fix some issues running tests with Windows paths on macOS
While tidying up some branches on my Mac I found this change I'd never uploaded. It fixes some (thought not all) failures when running with the memory resource provider set to Windows-style paths on non-Windows.

It also allows an environment variable (TEST_ANALYZER_WINDOWS_PATHS) to be used to set this behaviour to avoid modifying the code.

Change-Id: I4cb7e0c0aa6a10f28b43397c33ac8649af73a459
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331046
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2023-10-18 16:26:31 +00:00
Danny Tuppeny 8493e98bc4 [analysis_server] Add a failing test for enum completion
Raised at https://github.com/Dart-Code/Dart-Code/issues/4794.

Change-Id: I0df73481ddd68f3950b342581233a823455cddc4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330426
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2023-10-18 15:45:14 +00:00
Konstantin Shcheglov 9b196e5765 Remove isDartCoreFunction check from addSuperinterfaces().
It cannot happen, we remove invalid types during linking.

Change-Id: I9585a7bbe1f9c27cf029457bcd4221d46d509ccd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330948
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-10-18 15:42:59 +00:00
Chloe Stefantsova ffd43b214e [cfe] Report errors on zero or more than one representation fields
Part of https://github.com/dart-lang/sdk/issues/49731

Change-Id: I1009241a0a09a92c0e5b22b3848482b87392a72b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331061
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2023-10-18 14:54:25 +00:00
Tess Strickland c67f324cef [vm/compiler] Specialize ~/ by a power of two on 32-bit architectures.
Currently on 32-bit architectures, we only specialize truncating
division when the divisor is 1 or -1. That means all other cases
must go to runtime.

However, there is a general, non-branching computation for truncating
division when the absolute value of the divisor is a power of two,
so replace the call with that computation when appropriate.

TEST=language/div_mod, language/vm/modtruncdiv_int

Cq-Include-Trybots: luci.dart.try:vm-aot-linux-release-simarm_x64-try,vm-aot-linux-release-x64-try
Change-Id: I279565633b03d1e16c02200a96fd6ffef8798741
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331041
Commit-Queue: Tess Strickland <sstrickl@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
2023-10-18 14:49:54 +00:00
Ryan Macnak 846654fca4 [test_runner] Account for cross builds from ARM64.
Change-Id: I382f25375f097066b6f3b0836da6871b993ca62f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330942
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
2023-10-18 14:32:16 +00:00
Daco Harkes 243cf59776 [vm] Object pool SnapshotBehavior for bootstrapping native functions
`NativeCallInstr::EmitNativeCode` `link_lazily` code path uses the
new snapshotting behavior, and the non-`link_lazily` checks that it's
never snapshotted.

The snapshot behavior argument is threaded from the the EmitNativeCode
to the places where the pool entry is constructed.

Does not yet migrate `kSwitchableCallMissEntryPoint` and
`kMegamorphicCallEntryPoint`.

TEST=CI

Change-Id: I8dd1dc5aa525f888b493856c60ae385087463d02
Cq-Include-Trybots: luci.dart.try:vm-ffi-qemu-linux-release-riscv64-try,vm-linux-debug-simriscv64-try,vm-aot-linux-release-arm64-try,vm-aot-android-release-arm64c-try,vm-aot-win-debug-arm64-try,vm-aot-mac-product-arm64-try,vm-mac-debug-arm64-try,vm-ffi-android-debug-arm-try,vm-ffi-qemu-linux-release-arm-try,vm-linux-debug-ia32-try,vm-linux-debug-x64-try,vm-aot-linux-debug-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/328861
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2023-10-18 13:27:26 +00:00
Vyacheslav Egorov 35b3f65088 [vm/arm64] Remove redundant LoadDImmediate
TEST=mentally tested it

Change-Id: Iffcdccac07054601719124d902adf2207e274545
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331044
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Slava Egorov <vegorov@google.com>
2023-10-18 13:25:00 +00:00
Chloe Stefantsova be36f24d90 [cfe] Report error on representation type modifiers and missing type
This CL addresses some of the failures reported in
https://github.com/dart-lang/sdk/issues/53074

Part of https://github.com/dart-lang/sdk/issues/49731

Change-Id: I2b23a9d0c095856139563f9e500e88bebadc1ce3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/331042
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
2023-10-18 11:15:05 +00:00
Chloe Stefantsova 871d0b1b71 [cfe] Update UP for the case of extension and interface types
Change-Id: I968cc9c8ab38c944716c1a5f392e8cc4a732c1b8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330801
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
2023-10-18 10:37:32 +00:00
Slava Egorov 425a42e3be Revert "[vm, gc] Mark through new-space."
This reverts commit 5daaa7d9eb.

Reason for revert: internal crashes

Original change's description:
> [vm, gc] Mark through new-space.
>
>   - Initial and final marking no longer visit all of new-space, reducing the STW pause for major GC.
>   - A scavenge during concurrent marking must forward / filter objects in the marking worklist that are moved / collected, increasing the STW pause for minor GC.
>   - Unreachable intergenerational cycles and weak references are collected in the next mark-sweep instead of first requiring enough scavenges to promote the whole cycle or weak target into old-space.
>   - Artificial minor GCs are no longer needed to avoid memory leaks from back-to-back major GCs.
>   - reachabilityBarrier is now just a count of major GCs.
>
> TEST=ci
> Change-Id: I4a6a23273d8ecb78c640f054731d4ceb737bfc4d
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/325840
> Reviewed-by: Siva Annamalai <asiva@google.com>
> Commit-Queue: Ryan Macnak <rmacnak@google.com>

Change-Id: I8a50074db343c63c14f0487ae8b4f5fee2c4ae76
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330720
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Slava Egorov <vegorov@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2023-10-18 07:47:39 +00:00
Alexander Thomas b2a158cc43 [frontend_server] Cleanup license headers
Bug: b/286184681
Change-Id: Ia203b87fecf17903b46bf929b22d3667b6ec2d59
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330785
Auto-Submit: Alexander Thomas <athom@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2023-10-18 06:59:38 +00:00
Alexander Thomas 48cc894e1c [cfe] Fix incorrect license header
Bug: b/286184681
Change-Id: I3eba25d9d18131da4cadac90d164f3f756c213eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330802
Auto-Submit: Alexander Thomas <athom@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2023-10-18 06:58:48 +00:00
Ömer Sinan Ağacan ce9e332bb1 [dart2wasm] Make typed data implementation classes internally public
This is a part of [1] and a continuation of [2].

- Make typed data implementation file a library, to allow importing it
  in `dart:convert` patch.

- Make SIMD implementation file a library, to allow importing it from
  the typed data library.

- Make typed data implementation classes internally public (available in
  other `dart:...` libraries).

- Relax `mayDefineRestrictedType` to allow implementing restricted types
  anywhere in the standard library implementation.

[1]: https://dart-review.googlesource.com/c/sdk/+/330121
[2]: https://dart-review.googlesource.com/c/sdk/+/330781

Change-Id: I70bc6869a20fd2479bee081cfceef27d6de19974
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330783
Commit-Queue: Ömer Ağacan <omersa@google.com>
Reviewed-by: Jackson Gardner <jacksongardner@google.com>
2023-10-18 06:40:49 +00:00
Ömer Sinan Ağacan 555e965bb1 [dart2wasm] Duplicate VM's convert patch for dart2wasm targets
This copies VM's convert implementation in dart2wasm's default and JSCM
targets, to be able to optimize the implementation based on these
targets' typed data and string implementation classes.

An example optimization that specializes UTF-8 decoder to `_U8List` can
be seen in [1], which improves a real-world benchmark (extracted from
internal) from 220ms to 90ms. (-59%)

Another optimization is we will be using the browser's UTF8 and JSON
decoders in JSCM convert patch.

VM's convert patch is moved from vm_shared to vm, as it's no longer used
outside of VM.

[1]: https://dart-review.googlesource.com/c/sdk/+/330121

Tested: existing tests.
Change-Id: I981070615a106e4f356ed8b292a29ec950bd4d97
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330781
Reviewed-by: Jackson Gardner <jacksongardner@google.com>
Commit-Queue: Ömer Ağacan <omersa@google.com>
2023-10-18 06:39:59 +00:00
Sam Rawlins e61055abf0 analyzer: Fix yield assignability logic
The previous logic shortcutted the actual logic specified by the spec,
which introduced this bug. The shortcutted logic would ask "is
Iterable<dynamic> assignable to Iterable<int>?" which is "no."

This new logic separates the assignability calculation for yield* vs
yield statements.

Fixed: https://github.com/dart-lang/sdk/issues/53731
Change-Id: Ifd13c6b41b781167664de4e236583dc2b68f16a0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330946
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Auto-Submit: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2023-10-18 05:16:34 +00:00
Konstantin Shcheglov e4dfda311b Extension type. Issue 53725. Use representationTypeErasure of the matched type.
Bug: https://github.com/dart-lang/sdk/issues/53725
Change-Id: Ia9ea1b964288f05a19b23562a5c1e08e8dff5aa0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330981
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-10-18 02:51:38 +00:00
Konstantin Shcheglov b7591ed0a2 Update fieldNameNonPromotabilityInfo storing, element tests.
Change-Id: I9b0a87f5413084e8905c86175d2843e5bdad1633
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330947
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2023-10-18 02:50:19 +00:00
Ryan Macnak c0a936868b [vm, ffi] Round up checking for registers for small structs.
This fixes an edge case on all ARM64 ABIs, when there is only one argument register remaining and the next argument is a 9-16 byte struct.

TEST=ci
Bug: https://github.com/dart-lang/sdk/issues/52644
Change-Id: I40d962e6d1b3484dbfcf91f5d6baca0bfec76056
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330161
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2023-10-17 23:01:17 +00:00
Brian Quinlan b04c5a433e Adds tests and documentation for print line ending behavior
Bug:https://github.com/dart-lang/sdk/issues/53161
Change-Id: I3f13af3cb852b3656341922b9656ec91fc413eed
Tested: documentation + unit test only
CoreLibraryReviewExempt: Only adds documentation and adds a unit test to verify existing behavior
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/323426
Reviewed-by: Lasse Nielsen <lrn@google.com>
Commit-Queue: Brian Quinlan <bquinlan@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2023-10-17 22:10:38 +00:00
Konstantin Shcheglov f81c232c4a Extension type. Support in LUB.
Change-Id: I79db0fd6223ad05d9f3ad2f7602a7c1155ad0c4f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330900
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2023-10-17 21:40:19 +00:00
Konstantin Shcheglov cf447c583b Issue 53679. Support for RecordType in TOP_MERGE.
Bug: https://github.com/dart-lang/sdk/issues/53679
Change-Id: I948188a0f3d00ec46527a8d600c79da255e5e99f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330943
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2023-10-17 20:34:09 +00:00
Ryan Macnak 0685b34c88 [vm] Fail describing error if VMO operations fail for a reason other than no memory.
Cf. 78732b243e

TEST=remove VmexResource
Change-Id: I05604f34c37ad50e42d3adfa9d9d6ac1feb22cac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330940
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2023-10-17 20:32:52 +00:00
Vyacheslav Egorov aa893870df [dart2js] Disable Timeline is performance.measure is absent
Change d8 preamble to remove performance.measure entirely.

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

Change-Id: I4588e08e9126a0d0f8010f7a7786484da876bc85
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330110
Commit-Queue: Slava Egorov <vegorov@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Elliott Brooks <elliottbrooks@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2023-10-17 20:23:43 +00:00
Sam Rawlins 20dae1a3f6 linter: catch fields referenced in a pattern field
Fixes https://github.com/dart-lang/sdk/issues/53674

Change-Id: I87effd3cc4b3d3227cd26c3fdeb68b7f7e2d0ca9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330880
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Auto-Submit: Samuel Rawlins <srawlins@google.com>
2023-10-17 19:54:48 +00:00
Brian Quinlan becd3e396c [io] Make _HttpDetachedIncoming fields private
Change-Id: If1253a21613f2ea2baa69c68f0999b56e5181322
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330703
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Brian Quinlan <bquinlan@google.com>
2023-10-17 18:37:15 +00:00
Ryan Macnak 339d16e8b1 [infra] Skip unnecessary build step for QEMU RISCV64.
Change-Id: Ib7bef7aa9e0f4b76815749268c4990393a2342b1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330686
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2023-10-17 18:07:23 +00:00
Ben Konyi 55eecf9777 [ package:vm_service ] Skip some DevFS tests on Windows
Fixes https://github.com/dart-lang/sdk/issues/53773

Fixed: 53773
Change-Id: Ib10c75d1a703113dd135a51382343114d7a451ef
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330860
Auto-Submit: Ben Konyi <bkonyi@google.com>
Reviewed-by: Derek Xu <derekx@google.com>
Commit-Queue: Derek Xu <derekx@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2023-10-17 16:47:24 +00:00
Ryan Macnak 90d488b98e [build] Android RISCV64 using a Canary NDK.
Change-Id: I447941fd4eee0c1e4394b3ab5c0b9c36a7b4c257
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330701
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2023-10-17 16:34:27 +00:00
Ryan Macnak 7369dcb401 [vm, ffi] Add tests related to small structs.
TEST=ci
Change-Id: Ib39ce80bb149db488fb7e9ea0e44f7e5da57f205
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330481
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2023-10-17 16:24:48 +00:00
Tess Strickland 20b6843238 [vm/compiler] Convert more LoadUntagged -> LoadField.
Missed a couple of LoadUntaggeds for PointerBase.data in the graph
intrinsifier during 4d1bdaac.

Creates slots for ExternalOneByteString.external_data and
ExternalTwoByteString.external_data and uses LoadField with those slots
instead of LoadUntagged.

TEST=ci

Issue: https://github.com/dart-lang/sdk/issues/42072
Fixes: https://github.com/dart-lang/sdk/issues/53124
Change-Id: I900281644c4c42ad303cc7a6121e4c8bb7852cfe
Cq-Include-Trybots: luci.dart.try:vm-aot-linux-release-simarm_x64-try,vm-aot-linux-release-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/330787
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Tess Strickland <sstrickl@google.com>
2023-10-17 16:14:29 +00:00