c936c0fdd2
This is the final CL for deferred loading. It wires up the library-module analysis logic to the compiler. With all the Translator module predicates implemented, code should now be generated in separate modules (assuming the flag is enabled). This also handles the module naming scheme. For an invocation of dart2wasm like `dart2wasm main.dart out.wasm` this will produce files like `out.mjs, out.wasm, out_module1.wasm, out_module2.wasm, ...`. `out.wasm` is the main module that gets loaded on initialization. When the flag is disabled this will always be the only output. If the flag is disabled then the `_importMapping` in `deferred.dart` will be empty and we will default to the same behavior as today which will be to just return an empty `Future`. When enabled, `loadLibrary` will fetch and instantiate the new module(s) before proceeding. Change-Id: I0dd136c0af61b916be2a24b3d79052ff1b786b52 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/380440 Reviewed-by: Martin Kustermann <kustermann@google.com>
15 lines
828 B
Plaintext
15 lines
828 B
Plaintext
# Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file
|
|
# for details. All rights reserved. Use of this source code is governed by a
|
|
# BSD-style license that can be found in the LICENSE file.
|
|
# Sections in this file should contain "$compiler == dart2wasm".
|
|
|
|
[ $compiler == dart2wasm ]
|
|
inference_update_2/why_not_promoted_external_error_test: SkipByDesign # Non-JS-interop external members are not supported
|
|
number/separators_test: SkipByDesign # Wasm has real integers.
|
|
number/web_int_literals_test: SkipByDesign # Wasm has real integers.
|
|
vm/*: SkipByDesign # Tests for the VM.
|
|
|
|
[ $compiler == dart2wasm && $runtime == d8 ]
|
|
import/conditional_import_string_test: Skip # Timeout does not work with async module loading.
|
|
import/conditional_import_test: Skip # Timeout does not work with async module loading.
|