dart-sdk/sdk_nnbd/lib
Victor Lima b951498903 [vm/aot] Allow static methods to have unboxed args and return
Static methods and constructors may receive unboxed parameters.
This change adds a bitmap to the RawFunction object indicating
which parameters are unboxed and their types. Also, the stack frame
bitmap was updated to include new bits for those parameters.

The ArgumentsDescriptor object was updated to store not only the number
of arguments, but also their size, since 32-bit platforms would use two
words for each int64 and double value.

In addition, static methods that return non-nullable integers
and doubles may return these values unboxed.

Dart AOT x64:

TypedData.Uint8ClampedListViewVarBench  +11.73%
DeltaBlue                               +9.32%
Meteor (Intel Xeon)                     +4.64%

Flutter release android-armv8:

velocity_tracker_bench                  -2.32% (less is better)

flutter_gallery_readonlydata_size       +0.18%
flutter_gallery_total_size              +0.13%
flutter_gallery_instructions_size       +0.12%

Issue https://github.com/dart-lang/sdk/issues/33549

Change-Id: I97e310f8f30213920af2333fbdedf193d03db5c3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/135313
Commit-Queue: Victor Agnez Lima <victoragnez@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2020-03-05 15:17:04 +00:00
..
_http [VM/Libraries] Fix all errors reported by CFE when the option 2020-03-02 23:03:51 +00:00
_internal [vm/aot] Allow static methods to have unboxed args and return 2020-03-05 15:17:04 +00:00
async Revert "[vm/tfa] Convert named and optional parameters to required parameters where possible." 2020-02-25 15:12:01 +00:00
cli [VM/Libraries] Fix all errors reported by CFE when the option 2020-03-02 23:03:51 +00:00
collection [nnbd/corelib] Fix performance regressions due to casts in 'get current' in iterators 2020-03-04 21:07:16 +00:00
convert Fix based64 decoder. 2020-01-31 19:00:32 +00:00
core [nnbd/corelib] Fix performance regression in List.generate 2020-03-05 01:40:43 +00:00
developer [VM/Libraries] Fix all errors reported by CFE when the option 2020-03-02 23:03:51 +00:00
ffi [vm/ffi] Rename members in NativeApi to not contain nativeApi 2020-03-04 15:21:55 +00:00
html Modify fields in some abstract and native classes 2020-02-29 01:29:35 +00:00
indexed_db/dart2js Address analyzer errors in golden files in dart:html 2020-02-29 01:29:35 +00:00
internal [nnbd/corelib] Fix performance regressions due to casts in 'get current' in iterators 2020-03-04 21:07:16 +00:00
io [VM/Libraries] Fix all errors reported by CFE when the option 2020-03-02 23:03:51 +00:00
isolate [isolate/nnbd] fix nnbd errors in dart:isolate 2020-02-11 19:46:34 +00:00
js [nnbd] remove opt-out for dart:_js 2020-01-22 21:39:56 +00:00
js_util Undo breaking change in dart:js_util 2020-02-14 18:36:18 +00:00
math Update math.dart:atan2 in relation to atan comment - Follow-up for sdk_nnbd 2019-12-16 12:49:27 +00:00
mirrors [vm, lib] Teach mirrors about the Never type and member signatures. 2020-02-07 20:57:46 +00:00
svg/dart2js Address analyzer errors in golden files in dart:html 2020-02-29 01:29:35 +00:00
typed_data Update typed-data constructor documentation. 2020-01-24 09:53:26 +00:00
vmservice [vm/vmservice] Validate getIsolate response before attempting to retrieve pauseEvent from it. 2020-02-25 23:19:44 +00:00
wasm [vm, library] Migrate dart:wasm to NNBD 2020-01-14 17:55:55 +00:00
web_audio/dart2js Change all fields to native getters/setters 2020-02-29 01:29:35 +00:00
web_gl/dart2js Address analyzer errors in golden files in dart:html 2020-02-29 01:29:35 +00:00
web_sql/dart2js Change getters/setters to native for nnbd 2020-02-29 01:29:35 +00:00
libraries.json [dart2js] Update libraries.yaml with migrated dart2js. 2020-02-21 18:37:40 +00:00
libraries.yaml [dart2js] Update libraries.yaml with migrated dart2js. 2020-02-21 18:37:40 +00:00
vmservice_libraries.json [ VM / dart:vmservice ] Migrate dart:vmservice to NNBD, cleanup outdated code 2020-01-15 01:00:34 +00:00
vmservice_libraries.yaml [ VM / dart:vmservice ] Migrate dart:vmservice to NNBD, cleanup outdated code 2020-01-15 01:00:34 +00:00