-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[vm/ffi] Outlining state transitions in AOT
For single argument FFI calls: - reduces trampoline size significantly (up to 50%, 150-170 bytes), - reduces the compressed size of GPay by 2.5kb on arm64, - regresses performance on arm64 (up to 2.5%). For more arguments, percentage-wise size gains and speed regressions are smaller. Only applied on arm and arm64, we care about code size for these. Note: On Raspberry Pie (arm), the performance regression on single- argument calls regresses up to 30%. TEST=tests/ffi/* Design doc: https://go/dart-ffi-outline-state-transitions Closes: #50094 Change-Id: I8b8d7da45f69be6ac1432b11b695de71e56acfd1 Cq-Include-Trybots: luci.dart.try:vm-precomp-ffi-qemu-linux-release-arm-try,vm-ffi-android-debug-arm64c-try,vm-ffi-android-debug-arm-try,vm-kernel-nnbd-mac-debug-arm64-try Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/262343 Reviewed-by: Martin Kustermann <kustermann@google.com> Commit-Queue: Daco Harkes <dacoharkes@google.com>
- Loading branch information
Showing
2 changed files
with
22 additions
and
58 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters