dart-sdk/sdk/bin
Ömer Sinan Ağacan 7cceaebd49 [dart2wasm] Start using WebAssembly.String imports
Refactor `JSStringImpl` to use the js-string-builtins API[1].

When the module `WebAssembly.String` is not available we define a
"polyfill" with the previous imports, so this change is backwards
compatible.

Also updates some of the methods to use avoid multiple `this.length`
calls (which do an FFI call), and use unchecked getters when possible.

A new library `dart:_error_utils` is introduced for faster range and
index checks when the length (or max value) is known to be positive
(e.g. when it's the length of a string).

For now only `JSStringImpl` and `operator []` and `operator []=` of
`JSArrayImpl` are updated to use the new range and index checks. Rest of
the libraries will be updated separately.

[1]: https://github.com/WebAssembly/js-string-builtins

CoreLibraryReviewExempt: dart2wasm specific library change.
Change-Id: I9436def0cfe59c631f6f4e15ea06cc18a47a738e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/335043
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Ömer Ağacan <omersa@google.com>
2023-12-08 10:04:41 +00:00
..
dart Moving ReleaseARM64 earlier in candidate search order 2022-04-01 15:56:56 +00:00
dart.bat Update Windows build output path in .bat files 2016-06-07 10:43:13 +02:00
dart2js [dart2js] Update build infrastructure to move Dart2JS onto sound null safety. 2023-02-22 17:19:43 +00:00
dart2js.bat [3.0 alpha][VM/Runtime] - Flip flag to make strong null safety the default. 2022-12-06 04:04:23 +00:00
dart2js_developer Refs #25328 Use a portable shebang 2016-01-05 16:26:28 +01:00
dart2js_developer.bat Bugfix in dart2js_developer.bat: exitcode was not propagated correctly 2013-04-03 14:42:08 +00:00
dart2wasm [dart2wasm] Remove stringref target 2023-11-10 09:49:37 +00:00
dart2wasm_developer [dart2wasm] Initial commit for the Dart-to-WasmGC compiler. 2022-02-16 11:11:14 +00:00
run_dart2wasm_d8 [dart2wasm] Start using WebAssembly.String imports 2023-12-08 10:04:41 +00:00