William Hesse
0cb6607cf1
[sdk] Bump version to 2.14
...
TEST=CI presubmit with added tryjobs
Change-Id: I6c4f7de9d3fbe6d1031f6f0161e8ffebcea822a4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195062
Commit-Queue: William Hesse <whesse@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Alexander Thomas <athom@google.com >
2021-04-13 12:47:27 +00:00
Alexander Thomas
c88171c8af
[sdk] Bump version to 2.13
...
TEST=Presubmit tests and local builds
Change-Id: I1b15d60eced0cf3f422548eda75706609f6640cb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/182624
Commit-Queue: Alexander Thomas <athom@google.com >
Auto-Submit: Alexander Thomas <athom@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2021-02-04 12:10:17 +00:00
Leaf Petersen
a6faf8f2f9
[Language] Enable null safety in Dart 2.12.
...
Closes https://github.com/dart-lang/sdk/issues/22
Change-Id: I662dd17fda0ff62a871314896fbf1dbe220f41de
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/166790
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Leaf Petersen <leafp@google.com >
2020-10-29 18:25:56 +00:00
Jacob MacDonald
6cb9c66f28
Reland "Update SDK version to 2.11"
...
This reverts commit e834f9cf6e .
Reason for revert: Flutter has updated package versions to those that allow 2.11
Original change's description:
> Revert "Update SDK version to 2.11"
>
> This reverts commit 45ffef71e8 .
>
> Reason for revert: This breaks flutter hhh as packages that flutter depends on have upper bound of 2.10. This should be relanded after those packages have their upper bound raised.
>
> TBR=athom@google.com ,johnniwinther@google.com ,jakemac@google.com
>
> Original change's description:
> > Update SDK version to 2.11
> >
> > Change-Id: I9ffec7e098fd77dcc0cd48b70613d919bda45672
> > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/161342
> > Reviewed-by: Alexander Thomas <athom@google.com >
> > Reviewed-by: Jake Macdonald <jakemac@google.com >
> > Commit-Queue: Johnni Winther <johnniwinther@google.com >
>
> This breaks flutter hhh as packages that flutter depends on have upper bound of 2.10. This should be relanded after those packages have their upper bound raised.
>
> TBR=athom@google.com ,johnniwinther@google.com ,jakemac@google.com
>
> Change-Id: Ie00b8c77a16d863105517856118459e3e289d914
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/163704
> Commit-Queue: Alexander Aprelev <aam@google.com >
> Reviewed-by: Alexander Aprelev <aam@google.com >
> Reviewed-by: William Hesse <whesse@google.com >
TBR=whesse@google.com ,aam@google.com ,athom@google.com ,johnniwinther@google.com ,jakemac@google.com
Change-Id: Iec81adfb047b3f5387cdc817af3b08e6c086430a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/164241
Auto-Submit: Jake Macdonald <jakemac@google.com >
Reviewed-by: Alexander Thomas <athom@google.com >
Reviewed-by: Alexander Aprelev <aam@google.com >
Commit-Queue: Jake Macdonald <jakemac@google.com >
Commit-Queue: Alexander Thomas <athom@google.com >
2020-09-23 19:54:49 +00:00
Alexander Aprelev
e834f9cf6e
Revert "Update SDK version to 2.11"
...
This reverts commit 45ffef71e8 .
Reason for revert: This breaks flutter hhh as packages that flutter depends on have upper bound of 2.10. This should be relanded after those packages have their upper bound raised.
TBR=athom@google.com ,johnniwinther@google.com ,jakemac@google.com
Original change's description:
> Update SDK version to 2.11
>
> Change-Id: I9ffec7e098fd77dcc0cd48b70613d919bda45672
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/161342
> Reviewed-by: Alexander Thomas <athom@google.com >
> Reviewed-by: Jake Macdonald <jakemac@google.com >
> Commit-Queue: Johnni Winther <johnniwinther@google.com >
This breaks flutter hhh as packages that flutter depends on have upper bound of 2.10. This should be relanded after those packages have their upper bound raised.
TBR=athom@google.com ,johnniwinther@google.com ,jakemac@google.com
Change-Id: Ie00b8c77a16d863105517856118459e3e289d914
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/163704
Commit-Queue: Alexander Aprelev <aam@google.com >
Reviewed-by: Alexander Aprelev <aam@google.com >
Reviewed-by: William Hesse <whesse@google.com >
2020-09-21 23:30:34 +00:00
Johnni Winther
45ffef71e8
Update SDK version to 2.11
...
Change-Id: I9ffec7e098fd77dcc0cd48b70613d919bda45672
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/161342
Reviewed-by: Alexander Thomas <athom@google.com >
Reviewed-by: Jake Macdonald <jakemac@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-09-21 11:22:26 +00:00
Liam Appelbe
79cec0e864
[vm] Delete ABI infrastructure
...
Change-Id: I26d455d96c87010293a6dcb9f6c0eecfcaf3c816
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157102
Reviewed-by: Alexander Thomas <athom@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Liam Appelbe <liama@google.com >
2020-08-06 19:55:12 +00:00
William Hesse
f88ce7aef5
Increase Dart version to 2.10
...
Change-Id: Ic6b556f935602834564aca24690608aa624efa43
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155440
Reviewed-by: Martin Kustermann <kustermann@google.com >
2020-07-22 13:22:07 +00:00
Clement Skau
bec928c89f
[SDK] Bumps ABI version for sdk_hash.
...
The ABI version was bumped in the first revision of the sdk_hash CL,
but was lost during a rebase:
https://dart-review.googlesource.com/c/sdk/+/152802/1
Change-Id: Ic677ada4923c92b9ad5e799e86564fffdfef0870
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/153460
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Clement Skau <cskau@google.com >
2020-07-07 14:53:21 +00:00
Alexander Markov
e2e1820c33
Bump ABI version
...
Fixes https://github.com/dart-lang/sdk/issues/42516
Change-Id: Id6bd07ad1d8ea2e151b0d908edfc98f24dc3a791
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/153001
Reviewed-by: Liam Appelbe <liama@google.com >
Commit-Queue: Alexander Markov <alexmarkov@google.com >
2020-06-30 18:33:54 +00:00
Daco Harkes
6544c69e23
[vm/ffi] Convert Objects to Dart_Handles in FFI calls
...
This includes support for calling Dart_PropagateError in native code
when doing FFI calls, and catching uncaught exceptions with Dart_IsError
when doing FFI callbacks.
The support for Dart_PropagateError adds a catch entry to the FFI
trampoline, which prevents inlining these trampolines in AOT. This
regresses the FfiCall benchmarks by 1-2% in AOT.
In addition, Dart_PropagateError requires maintaining a bit whether we
entered native/VM code from generated code through FFI or not. That way
we can do the proper transition on the exception path. When entering
generated code, we store this bit on the stack, right after the entry
frame.
Design: http://go/dart-ffi-handles
Issue: https://github.com/dart-lang/sdk/issues/36858
Issue: https://github.com/dart-lang/sdk/issues/41319
Change-Id: Idfd7ff69132fb29cc730931a4113d914d4437396
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try,vm-ffi-android-debug-arm64-try,app-kernel-linux-debug-x64-try,vm-kernel-linux-debug-ia32-try,vm-kernel-win-debug-x64-try,vm-kernel-win-debug-ia32-try,vm-kernel-precomp-linux-debug-x64-try,vm-dartkb-linux-release-x64-abi-try,vm-kernel-precomp-android-release-arm64-try,vm-kernel-asan-linux-release-x64-try,vm-kernel-linux-release-simarm-try,vm-kernel-linux-release-simarm64-try,vm-kernel-precomp-android-release-arm_x64-try,vm-kernel-precomp-obfuscate-linux-release-x64-try,dart-sdk-linux-try,analyzer-analysis-server-linux-try,analyzer-linux-release-try,front-end-linux-release-x64-try,vm-kernel-precomp-win-release-x64-try,vm-kernel-mac-debug-x64-try,vm-precomp-ffi-qemu-linux-release-arm-try,vm-kernel-nnbd-linux-debug-x64-try,analyzer-nnbd-linux-release-try,front-end-nnbd-linux-release-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/145591
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2020-06-12 11:14:22 +00:00
Aske Simon Christensen
e35ca30ca5
Reland "[vm] MemoryCopy instruction for copying between typed data and strings."
...
This is a reland of 6ecd8a10ea
Original change's description:
> [vm] MemoryCopy instruction for copying between typed data and strings.
>
> Used for copying the bytes from the Uint8List to the _OneByteString in
> String.fromCharCodes and the pure-ASCII case of UTF-8 decoding.
>
> Issue https://github.com/dart-lang/sdk/issues/42072
> Closes https://github.com/dart-lang/sdk/issues/41703
>
> Change-Id: I1ae300222877d1c6e64e32c2f40b8fb187a584c0
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149500
> Commit-Queue: Aske Simon Christensen <askesc@google.com >
> Reviewed-by: Martin Kustermann <kustermann@google.com >
Change-Id: Ia231c521e5f2db168cfc6094dfc7322327dedc6d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150925
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Aske Simon Christensen <askesc@google.com >
2020-06-11 12:29:19 +00:00
Liam Appelbe
4d29f507f7
[vm] Bump the ABI version
...
Change-Id: Ifcacc4921e67373ec8221c8fcb39c5b5764dc0ca
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150502
Commit-Queue: Liam Appelbe <liama@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
Auto-Submit: Liam Appelbe <liama@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2020-06-08 20:49:25 +00:00
Alexander Markov
2b57c77c0a
Bump ABI version after a breaking change
...
ABI version is increased to make vm-dartkb-linux-release-x64-abi bot
happy after https://dart-review.googlesource.com/c/sdk/+/146784 .
Change-Id: I815633ca41c77fa288dc9428310cb4feaa322659
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147805
Reviewed-by: Liam Appelbe <liama@google.com >
Commit-Queue: Alexander Markov <alexmarkov@google.com >
2020-05-12 19:06:11 +00:00
Liam Appelbe
1ef444139c
[vm] Bump ABI version
...
Change-Id: Ie3a801c3a8c1afeb49dfa9be29d4c620813fff83
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/146640
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Liam Appelbe <liama@google.com >
2020-05-05 20:33:38 +00:00
Alexander Thomas
3c85da7778
[release] Bump version to 2.9
...
Change-Id: I2fc393cbb7a9111f4c09db6a2a7a202eeb88992c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/142996
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
2020-04-15 18:36:42 +00:00
Daco Harkes
445d279ff3
[vm] Add Reachability Fence Instruction
...
The reachability fence keeps a value alive and reachable.
Required for finalizers: https://github.com/dart-lang/sdk/issues/35770
Design: go/dart-ffi-finalizers (See "Premature Cleanup (Single Object)".)
Change-Id: I9742889f0f8d8b15bbcb5dca47f2a4231899dd59
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try,vm-ffi-android-debug-arm64-try,app-kernel-linux-debug-x64-try,vm-kernel-linux-debug-ia32-try,vm-kernel-win-debug-x64-try,vm-kernel-win-debug-ia32-try,vm-kernel-precomp-linux-debug-x64-try,vm-dartkb-linux-release-x64-abi-try,vm-kernel-precomp-android-release-arm64-try,vm-kernel-asan-linux-release-x64-try,vm-kernel-linux-release-simarm-try,vm-kernel-linux-release-simarm64-try,vm-kernel-precomp-android-release-arm_x64-try,vm-kernel-precomp-obfuscate-linux-release-x64-try,dart-sdk-linux-try,analyzer-analysis-server-linux-try,analyzer-linux-release-try,front-end-linux-release-x64-try,vm-kernel-precomp-win-release-x64-try,vm-kernel-mac-debug-x64-try,vm-kernel-nnbd-linux-debug-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/136188
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Daco Harkes <dacoharkes@google.com >
2020-03-26 18:30:44 +00:00
Leaf Petersen
72086df689
Bump ABI version for runZoneGuarded.
...
New API (runZonedGuarded) was added to the core libraries.
Bug: https://github.com/dart-lang/sdk/issues/41192
Change-Id: Iae56be055bf1e23051fdc93b07ac2db2902c9bd7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140880
Auto-Submit: Leaf Petersen <leafp@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2020-03-25 03:43:19 +00:00
asiva
1a8d6ad16e
[VM] Bump ABI version to 30
...
Change-Id: Icb60b5ea76a6cbb053d0841be65616b416aaa122
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140260
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
Auto-Submit: Siva Annamalai <asiva@google.com >
2020-03-20 04:59:50 +00:00
Régis Crelier
5701c4fd3b
[VM/nnbd] Remove propagation of library mode to runtime after spec change.
...
On 1/27/20, the nnbd specification changed weak and strong mode instance checks
to make them behave uniformly across legacy and opted-in libraries.
Therefore, it is not necessary anymore to propagate the library mode in
generated code to the runtime.
Change-Id: I42d3ddc6e9a921899aeac21be6374c7893a6d27c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138111
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2020-03-03 20:30:32 +00:00
asiva
8115ea1867
Update ABI version.
...
Change-Id: Ia739d419126588f827449671c63725c3f7cc8cf8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/133120
Reviewed-by: Liam Appelbe <liama@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2020-01-23 20:49:49 +00:00
Ben Konyi
8fb6e250aa
[ VM ] Update ABI version after SIMD typed_data changes
...
Change-Id: Ic8564fac00ce7d8c05f6838162ba5c0a042aa791
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129814
Auto-Submit: Ben Konyi <bkonyi@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Alexander Markov <alexmarkov@google.com >
2019-12-27 21:04:45 +00:00
Régis Crelier
b92fefdfe9
[VM/nnbd] Pass nnbd mode from compiler via generated code or bytecode to runtime functions performing type checks or type reification.
...
This continues the work started in https://dart-review.googlesource.com/c/sdk/+/124105
The nnbd mode is now part of the type arguments instantiation cache,
since the resulting vector depends on the mode.
Change-Id: I803c07fa9473024557db8585e87286f16681169a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128307
Commit-Queue: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Liam Appelbe <liama@google.com >
2019-12-20 03:26:29 +00:00
Régis Crelier
8894b88467
[VM/nnbd] Implement syntactic type equality.
...
Legacy types are considered equal to their non-nullable variant.
Type hash is modified to be consistent with the new definition.
Change-Id: If90f7f13cf77e519d5b90b57d9dbf4988f71be13
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/126283
Commit-Queue: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-12-09 18:18:59 +00:00
Alexander Thomas
46a5f35da7
[infra] Bump VERSION to 2.8.0
...
Change-Id: I7a984bdaccab42ab908624e88e066e6e9fb3840a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/126840
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Alexander Thomas <athom@google.com >
2019-12-02 13:58:47 +00:00
Liam Appelbe
329d0913ca
[vm] Late modifier for non-final local variables.
...
I also added a test for top level late variables (they already worked).
Bug: https://github.com/dart-lang/sdk/issues/38841
Change-Id: I6720e6476a067c7f8b21a34b87b23ab14fc866a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125224
Commit-Queue: Liam Appelbe <liama@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
2019-11-15 23:03:16 +00:00
Liam Appelbe
782b048625
Bump the ABI version
...
Change-Id: I1d691f3814ab7b3161802242e6ce09d26f97bc9a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124840
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Liam Appelbe <liama@google.com >
2019-11-11 23:05:49 +00:00
Liam Appelbe
1f8ef384d9
[vm] First pieces of late modifier implementation.
...
This implements the logic for initializing, getting, and setting
non-final instance fields that have initializers. It doesn't address
statics, finals, local variables, or the no-initializer case, and is
only implemented for bytecode.
Bug: https://github.com/dart-lang/sdk/issues/38841
Change-Id: I3b9e2772abdc04e3bfede56d2fcf06738f234cbb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122489
Commit-Queue: Liam Appelbe <liama@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-11-05 19:48:03 +00:00
Régis Crelier
df678dbec0
[VM/nnbd] Introduce type Never in VM and bytecode.
...
Introduce enum NNBDMode for subtype test checking mode.
Change-Id: Id9c39ee8c975c664ac58e313b7dd05e6e219dfc1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/123557
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2019-11-01 00:43:59 +00:00
Régis Crelier
efb4511916
[VM/nnbd] Propagate nullability info on types from kernel to VM and bytecode.
...
Change-Id: I2f2b5819a58d55b60aaf82418e0d2feaad4aaa32
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121414
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2019-10-29 23:39:36 +00:00
Johnni Winther
22856e5d86
[infra] Bump VERSION to 2.7.0
...
TBR=whesse@google.com
Change-Id: Id73807b571056de253f7bced407402fa9a6d9181
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122800
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Alexander Thomas <athom@google.com >
Reviewed-by: William Hesse <whesse@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2019-10-25 09:37:34 +00:00
Martin Kustermann
62283b9d3f
[vm] Bump ABI version to make vm-dartkb-linux-release-x64-abi green again
...
Change-Id: I214d850206e103265fcbd213899d615f9cab7afc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121990
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-10-17 18:19:10 +00:00
Alexander Markov
3c3bd8d7c9
[vm,aot,bytecode] Support obfuscation
...
In order to support obfuscation, string constants are decoupled
from public names in bytecode (names are obfuscated, but string
constants aren't). List of protected names is written in a separate
section in bytecode component.
Obfuscator is extended to support getter and setter
names coming from bytecode.
Change-Id: I8e8d820d1a8b97e32e8ad1b064b827bdb017430b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121261
Commit-Queue: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
2019-10-14 18:12:29 +00:00
Daco Harkes
d23c824435
Reland "[vm/ffi] Optimize Pointer operations for statically known types"
...
Original CL in patchset 1.
Fix for simdbc in patchset 4.
Fix for arm32 precompiled in: https://dart-review.googlesource.com/c/sdk/+/120660/
This CL optimizes Pointer operations in hot loops for Pointer<NativeInteger/NativeDouble/Pointer> (not for structs).
Design: go/dart-ffi-pointers-il
It provides roughly a 100x speedup for the FfiMemory benchmark. The next 5x speedup is to get rid of allocations due to `load` and `store` not being inlined.
FFI API is changed to enable optimizations:
* Disable dynamic invocations of Pointer.load / Pointer.store.
* Disallow implicit downcast of argument passed to Pointer.store.
* Stop zeroing out Pointer.address on Pointer.free().
Issue: https://github.com/dart-lang/sdk/issues/38172
Related issues:
Closes: https://github.com/dart-lang/sdk/issues/35902 (Disallowing dynamic invocations of Pointer ops.)
Closes: https://github.com/dart-lang/sdk/issues/37385 (Function variance checking)
Change-Id: I3921a595fd05026d6ca565ace496771d7c1d877b
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try,vm-ffi-android-debug-arm64-try,app-kernel-linux-debug-x64-try,vm-kernel-linux-debug-ia32-try,vm-dartkb-linux-debug-simarm64-try,vm-kernel-win-debug-x64-try,vm-kernel-win-debug-ia32-try,vm-dartkb-linux-debug-x64-try,vm-kernel-precomp-linux-debug-x64-try,vm-dartkb-linux-release-x64-abi-try,vm-kernel-precomp-android-release-arm64-try,vm-kernel-asan-linux-release-x64-try,vm-kernel-linux-release-simarm-try,vm-kernel-linux-release-simarm64-try,vm-kernel-mac-debug-simdbc64-try,vm-kernel-precomp-android-release-arm_x64-try,vm-kernel-reload-mac-release-simdbc64-try,vm-kernel-precomp-obfuscate-linux-release-x64-try,vm-kernel-reload-rollback-linux-debug-x64-try,vm-kernel-precomp-mac-release-simarm_x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120661
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Daco Harkes <dacoharkes@google.com >
2019-10-08 13:04:39 +00:00
Daco Harkes
0eff6b38a9
Revert "[vm/ffi] Optimize Pointer operations for statically known types"
...
This reverts commit 3712ed27ef .
Reason for revert: Breaks Arm32 precompiled.
Issue: https://github.com/dart-lang/sdk/issues/38737
Original change's description:
> [vm/ffi] Optimize Pointer operations for statically known types
>
> This CL optimizes Pointer operations in hot loops for Pointer<NativeInteger/NativeDouble/Pointer> (not for structs).
>
> Design: go/dart-ffi-pointers-il
>
> It provides roughly a 100x speedup for the FfiMemory benchmark. The next 5x speedup is to get rid of allocations due to `load` and `store` not being inlined.
>
> FFI API is changed to enable optimizations:
>
> * Disable dynamic invocations of Pointer.load / Pointer.store.
> * Disallow implicit downcast of argument passed to Pointer.store.
> * Stop zeroing out Pointer.address on Pointer.free().
>
> Issue: https://github.com/dart-lang/sdk/issues/38172
>
> Related issues:
> Closes: https://github.com/dart-lang/sdk/issues/35902 (Disallowing dynamic invocations of Pointer ops.)
> Closes: https://github.com/dart-lang/sdk/issues/37385 (Function variance checking.)
>
> Change-Id: I96058d8b5b49052eb6999f084372e6f08b4f6f17
> Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try,vm-ffi-android-debug-arm64-try,app-kernel-linux-debug-x64-try,vm-kernel-linux-debug-ia32-try,vm-dartkb-linux-debug-simarm64-try,vm-kernel-win-debug-x64-try,vm-kernel-win-debug-ia32-try,vm-dartkb-linux-debug-x64-try,vm-kernel-precomp-linux-debug-x64-try,vm-dartkb-linux-release-x64-abi-try,vm-kernel-precomp-android-release-arm64-try
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117547
> Commit-Queue: Daco Harkes <dacoharkes@google.com >
> Reviewed-by: Martin Kustermann <kustermann@google.com >
TBR=kustermann@google.com ,sjindel@google.com ,dacoharkes@google.com
Change-Id: I3b7923ace45beaa9f99119e9ea20c1e52b429ad8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Issue: https://github.com/dart-lang/sdk/issues/38172
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try, vm-ffi-android-debug-arm64-try, app-kernel-linux-debug-x64-try, vm-kernel-linux-debug-ia32-try, vm-dartkb-linux-debug-simarm64-try, vm-kernel-win-debug-x64-try, vm-kernel-win-debug-ia32-try, vm-dartkb-linux-debug-x64-try, vm-kernel-precomp-linux-debug-x64-try, vm-dartkb-linux-release-x64-abi-try, vm-kernel-precomp-android-release-arm64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120582
Reviewed-by: Daco Harkes <dacoharkes@google.com >
Commit-Queue: Daco Harkes <dacoharkes@google.com >
2019-10-07 11:50:43 +00:00
Daco Harkes
3712ed27ef
[vm/ffi] Optimize Pointer operations for statically known types
...
This CL optimizes Pointer operations in hot loops for Pointer<NativeInteger/NativeDouble/Pointer> (not for structs).
Design: go/dart-ffi-pointers-il
It provides roughly a 100x speedup for the FfiMemory benchmark. The next 5x speedup is to get rid of allocations due to `load` and `store` not being inlined.
FFI API is changed to enable optimizations:
* Disable dynamic invocations of Pointer.load / Pointer.store.
* Disallow implicit downcast of argument passed to Pointer.store.
* Stop zeroing out Pointer.address on Pointer.free().
Issue: https://github.com/dart-lang/sdk/issues/38172
Related issues:
Closes: https://github.com/dart-lang/sdk/issues/35902 (Disallowing dynamic invocations of Pointer ops.)
Closes: https://github.com/dart-lang/sdk/issues/37385 (Function variance checking.)
Change-Id: I96058d8b5b49052eb6999f084372e6f08b4f6f17
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try,vm-ffi-android-debug-arm64-try,app-kernel-linux-debug-x64-try,vm-kernel-linux-debug-ia32-try,vm-dartkb-linux-debug-simarm64-try,vm-kernel-win-debug-x64-try,vm-kernel-win-debug-ia32-try,vm-dartkb-linux-debug-x64-try,vm-kernel-precomp-linux-debug-x64-try,vm-dartkb-linux-release-x64-abi-try,vm-kernel-precomp-android-release-arm64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117547
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-10-07 09:23:54 +00:00
Alexander Markov
07a63a17a4
[vm,aot,bytecode] Handle procedure-attributes metadata when generating bytecode
...
Change-Id: I26e1a15d979ce13ca60298de28ced49b6882cf52
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119765
Commit-Queue: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
2019-10-03 16:27:33 +00:00
Samir Jindel
b510b91424
[vm] Bump abi version.
...
https://dart-review.googlesource.com/c/sdk/+/117726 was incorrectly rebased.
Change-Id: Ibec9d10dbddc4820c1fb0b39cdfb55236c2c1ff2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117780
Reviewed-by: Samir Jindel <sjindel@google.com >
2019-09-18 15:53:44 +00:00
Samir Jindel
205b90f0de
Take 3 for '[vm/ffi] Implement FFI callbacks on AOT for ELF and Asm snapshots (excl. blobs).'
...
Fixes the changes to assembly snapshot writer in SIMARM_X64 mode. This unfortunately can't be tested until the ELF loader is available.
Take 2 is in patchset 1.
Change-Id: Ib8b067dd4f09dcba3b142705e9cb4dfbf4e3eb53
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117726
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2019-09-18 14:56:27 +00:00
Alexander Aprelev
0c481a196c
Revert Reland '[vm/ffi] Implement FFI callbacks on AOT for ELF and Asm snapshots (excl. blobs).' as it breaks flutter profile execution on ios 32-bit platform.
...
Fixes https://github.com/flutter/flutter/issues/40114
Change-Id: If8d71e9c19c2e794d29f7ecbacb87457890a2fd5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116883
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Alexander Aprelev <aam@google.com >
2019-09-12 00:10:09 +00:00
Alexander Markov
13a69b5631
[vm/bytecode] Replace ICData constant pool entries with DynamicCall
...
VM no longer relies on distinct ICData entries in constant pool, and
it no longer creates actual ICData objects.
This change introduces new DynamicCall constant pool entry which is
* de-duplicated;
* stores arguments descriptor inline instead of allocating a separate
constant pool entry and referencing it by index;
* reserves extra slot in constant pool (like other call constants), so
we can eventually remove creation of extra UnlinkedCall objects.
Change-Id: I8d21954803ca5be5b6fc8335b700e8a9086245cf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116120
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
Commit-Queue: Alexander Markov <alexmarkov@google.com >
2019-09-07 02:17:37 +00:00
Samir Jindel
c219a76652
Reland "[vm/ffi] Implement FFI callbacks on AOT for ELF and Asm snapshots (excl. blobs)."
...
The original change is in Patchset 1.
The dependency contains the fix for the non-bare-instructions bot.
Change-Id: Iab02ab0736a2ee9144b667d2777ca526341b2a36
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-linux-debug-x64-try,vm-kernel-precomp-linux-product-x64-try,vm-kernel-precomp-linux-release-x64-try,vm-kernel-precomp-linux-release-x64-try,vm-kernel-precomp-android-release-arm-try,vm-dartkb-linux-release-x64-abi-try,vm-kernel-precomp-bare-linux-release-x64-try,vm-kernel-precomp-mac-debug-simarm_x64-try,vm-kernel-precomp-win-release-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115241
Commit-Queue: Samir Jindel <sjindel@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2019-09-05 20:19:22 +00:00
Zichang Guo
16a4c0d13c
Bump up oldest_supported_abi_version for abi bot
...
Fix abi bot
Change-Id: I6695c0b55eaaa1b2cb13eba47dde9b3e6b34f343
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115760
Reviewed-by: Liam Appelbe <liama@google.com >
Commit-Queue: Zichang Guo <zichangguo@google.com >
2019-09-05 17:52:40 +00:00
Zichang Guo
92ed74e5f1
Reland "[vm] support zoneID for http"
...
This is a reland of c3db2e3ee0
Original change's description:
> [vm] support zoneID for http
>
> Coming from https://dart-review.googlesource.com/c/sdk/+/103544 .
>
> Fixes: https://github.com/dart-lang/sdk/issues/37570
> Change-Id: I0f81cb5d8009dc929fca24e03a343a7b0c1597bc
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110121
> Reviewed-by: Siva Annamalai <asiva@google.com >
> Commit-Queue: Zichang Guo <zichangguo@google.com >
Change-Id: I3692bf02fd29bc3bc8b9b54de1466075fecec1f3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115605
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Zichang Guo <zichangguo@google.com >
2019-09-05 14:54:48 +00:00
Zichang Guo
8cad4a2146
Revert "bump up ABI version to fix red abi bot"
...
This reverts commit c5e618b3da .
Reason for revert: <INSERT REASONING HERE>
Original change's description:
> bump up ABI version to fix red abi bot
>
> Change-Id: I8c2cf558ff605812df3fee10da04e67125055cbc
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115441
> Reviewed-by: Régis Crelier <regis@google.com >
> Commit-Queue: Zichang Guo <zichangguo@google.com >
TBR=regis@google.com ,zichangguo@google.com
Change-Id: I2e5e99d88930207326295e9b455b72be3681ba36
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115603
Reviewed-by: Zichang Guo <zichangguo@google.com >
Commit-Queue: Zichang Guo <zichangguo@google.com >
2019-09-04 22:17:19 +00:00
Zichang Guo
c5e618b3da
bump up ABI version to fix red abi bot
...
Change-Id: I8c2cf558ff605812df3fee10da04e67125055cbc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115441
Reviewed-by: Régis Crelier <regis@google.com >
Commit-Queue: Zichang Guo <zichangguo@google.com >
2019-09-04 19:37:41 +00:00
Alexander Thomas
1438a68034
[infra] Bump version to 2.6
...
Change-Id: I978f48c6eb2f9a14961c0f6710d47cf1bb00f17d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114863
Reviewed-by: William Hesse <whesse@google.com >
2019-08-28 16:26:33 +00:00
Daco Harkes
51f4574e50
Reland "[vm/ffi] Support structs on 32bit architectures"
...
Fixes alignment checks on GCC <= 7 and Clang <= 7.
Fixes: https://github.com/dart-lang/sdk/issues/37559
Fixes: https://github.com/dart-lang/sdk/issues/36334
Original CL is in patchset 1.
Tested GCC 7 and Clang 7 behavior of alignof and offsetof manually (our CQ uses newer tooling).
Change-Id: I828b00ad3d36be68a0d28b0a710fea938ca17784
Cq-Include-Trybots: luci.dart.try:vm-ffi-android-debug-arm-try, app-kernel-linux-debug-x64-try, vm-kernel-linux-debug-simdbc64-try,vm-kernel-linux-debug-ia32-try,vm-dartkb-linux-debug-simarm64-try,vm-kernel-win-debug-x64-try,vm-kernel-win-debug-ia32-try,vm-dartkb-linux-debug-x64-try,vm-kernel-precomp-linux-debug-x64-try,vm-ffi-android-product-arm-try,vm-dartkb-linux-release-x64-abi-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112254
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Daco Harkes <dacoharkes@google.com >
2019-08-09 14:14:32 +00:00
Alexander Markov
ac45ee7e63
[vm/bytecode] Support exactness tracking in bytecode
...
MicroClosureCreateTearoffClassSecondTime(RunTime) 3922 us -> 2030 us.
Issue: https://github.com/dart-lang/sdk/issues/36429
Change-Id: I3a6f93950a469969d82243fd1744d5a4f7fb1e78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111868
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Alexander Markov <alexmarkov@google.com >
2019-08-03 17:36:31 +00:00
Ryan Macnak
330a401233
Increment ABI version.
...
The named of the recognized method `_GrowableList.withData` was changed to `_GrowableList._withData`.
Change-Id: I94b08fdbb39579c4713935b61a148db4baa751d8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111780
Reviewed-by: Liam Appelbe <liama@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2019-08-02 05:13:58 +00:00