dart-sdk/sdk/lib
Ö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
..
_http [io] Make _HttpDetachedIncoming fields private 2023-10-17 18:37:15 +00:00
_internal [dart2wasm] Duplicate VM's convert patch for dart2wasm targets 2023-10-18 06:39:59 +00:00
_wasm Expose some APIs for translating between wasm and JS interop types. 2023-09-27 21:34:38 +00:00
async Fix typo 2023-10-12 07:54:48 +00:00
cli [vm] Disable dart:cli waitFor by default 2023-09-14 10:08:29 +00:00
collection Format containsValue() description in hash_map.dart 2023-10-02 10:25:59 +00:00
convert Refer to unnamed constructors in doc comments with '.new' 2023-10-17 14:42:38 +00:00
core Adds tests and documentation for print line ending behavior 2023-10-17 22:10:38 +00:00
developer [vm/compiler] Tag non-ffi force-optimized functions idempotent. 2023-08-18 18:27:58 +00:00
ffi [ffi/doc] Document the type requirements of native functions 2023-10-11 12:50:12 +00:00
html [dart:html] Fix incorrect parameter mention in drawImageScaledFromSource docs 2023-08-23 00:25:29 +00:00
indexed_db web_audio is not part sky_engine 2023-09-14 10:33:17 +00:00
internal Hide the existence of EfficientLengthIterable better. 2023-09-12 11:08:42 +00:00
io Remove deprecated APIs from dart_io_extensions.dart and add new is*Available RPCs. 2023-10-11 22:22:12 +00:00
isolate Refer to unnamed constructors in doc comments with '.new' 2023-10-17 14:42:38 +00:00
js Reland "[pkg:js/dart:js_interop] Move annotations to dart:_js_annotations" 2023-05-02 15:24:18 +00:00
js_interop [dart:js_interop] Add/fix some js_interop helpers 2023-09-23 18:32:59 +00:00
js_interop_unsafe [dart:js_interop_unsafe] Rename extensions and make []/[]= take String properties 2023-09-12 23:11:55 +00:00
js_util [js_util] Make callMethod take an Object method. 2023-03-23 00:23:00 +00:00
math Adding class modifiers to dart:math. 2023-03-13 14:01:26 +00:00
mirrors [sdk docs] update sdk libraries to use triple slash docs 2023-03-14 19:10:25 +00:00
svg web_audio is not part sky_engine 2023-09-14 10:33:17 +00:00
typed_data [flip-modifiers]: Reapply "Enforce current library restrictions." 2023-03-03 09:37:38 +00:00
vmservice [vm] Pass offset and script uri for expression compilation 2023-10-12 10:22:38 +00:00
web_audio web_audio is not part sky_engine 2023-09-14 10:33:17 +00:00
web_gl web_audio is not part sky_engine 2023-09-14 10:33:17 +00:00
web_sql web_audio is not part sky_engine 2023-09-14 10:33:17 +00:00
analysis_options.yaml [vm/ffi] Support varargs 2023-01-20 10:30:41 +00:00
libraries.json [dart2wasm] Duplicate VM's convert patch for dart2wasm targets 2023-10-18 06:39:59 +00:00
libraries.yaml [dart2wasm] Duplicate VM's convert patch for dart2wasm targets 2023-10-18 06:39:59 +00:00
PRESUBMIT.py
vmservice_libraries.json
vmservice_libraries.yaml