dart-sdk/sdk/lib/libraries.yaml
Daco Harkes 2b5adb7231 [vm] Implement constant Maps in the VM
This CL changes the frontend to emit map and set constants which are
then processed by the constant reader in the VM.

This CL also introduces support for sending the const maps and sets
in messages between isolates and saving it in snapshots.

TEST=tests/language/const/map_test.dart (et al, for lookups)
TEST=tests/lib/isolate/message3_test.dart (et al, for isolate messages)
TEST=tools/test.py -c dartkp (for consts from clustered snapshot)
TEST=tools/test.py -n app_jitk-linux-debug-x64 (for consts from app
     jit snapshots)
TEST=Building the SDK which uses const Maps in clustered snapshots.

Closes: https://github.com/dart-lang/sdk/issues/45908

Change-Id: I1f8150a8aba8298c4e64d2571dd147743526135a
Cq-Include-Trybots: luci.dart.try:analyzer-nnbd-linux-release-try,app-kernel-linux-debug-x64-try,dart-sdk-linux-try,front-end-nnbd-linux-release-x64-try,pkg-linux-debug-try,vm-canary-linux-debug-try,vm-kernel-asan-linux-release-x64-try,vm-kernel-checked-linux-release-x64-try,vm-kernel-linux-debug-x64c-try,vm-kernel-linux-debug-x64-try,vm-kernel-linux-debug-simarm64c-try,vm-kernel-nnbd-linux-release-simarm-try,vm-kernel-optcounter-threshold-linux-release-x64-try,vm-kernel-precomp-android-release-arm_x64-try,vm-kernel-precomp-linux-debug-x64-try,vm-kernel-precomp-linux-debug-x64c-try,vm-kernel-reload-linux-debug-x64-try,vm-kernel-reload-rollback-linux-debug-x64-try,vm-precomp-ffi-qemu-linux-release-arm-try,vm-kernel-precomp-linux-debug-simarm_x64-try,vm-kernel-precomp-linux-debug-x64-try,vm-kernel-precomp-tsan-linux-release-x64-try,vm-kernel-tsan-linux-release-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/203765
Reviewed-by: Martin Kustermann <kustermann@google.com>
2021-09-06 06:28:59 +00:00

475 lines
13 KiB
YAML

# Copyright (c) 2017, 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.
# Note: if you edit this file, you must also generate libraries.json in this
# directory:
#
# dart tools/yaml2json.dart sdk/lib/libraries.yaml sdk/lib/libraries.json
#
# We currently have several different files that needs to be updated when
# changing libraries, sources, and patch files. See
# https://github.com/dart-lang/sdk/issues/28836.
none:
libraries: {}
vm:
libraries:
_builtin:
uri: "_internal/vm/bin/builtin.dart"
_internal:
uri: "internal/internal.dart"
patches:
- "_internal/vm/lib/internal_patch.dart"
- "_internal/vm/lib/class_id_fasta.dart"
- "_internal/vm/lib/print_patch.dart"
- "_internal/vm/lib/symbol_patch.dart"
- "internal/patch.dart"
async:
uri: "async/async.dart"
patches:
- "_internal/vm/lib/async_patch.dart"
- "_internal/vm/lib/deferred_load_patch.dart"
- "_internal/vm/lib/schedule_microtask_patch.dart"
- "_internal/vm/lib/timer_patch.dart"
collection:
uri: "collection/collection.dart"
patches:
- "_internal/vm/lib/collection_patch.dart"
- "_internal/vm/lib/compact_hash.dart"
convert:
uri: "convert/convert.dart"
patches: "_internal/vm/lib/convert_patch.dart"
core:
uri: "core/core.dart"
patches:
- "_internal/vm/lib/core_patch.dart"
- "_internal/vm/lib/array.dart"
- "_internal/vm/lib/array_patch.dart"
- "_internal/vm/lib/bigint_patch.dart"
- "_internal/vm/lib/bool_patch.dart"
- "_internal/vm/lib/date_patch.dart"
- "_internal/vm/lib/double.dart"
- "_internal/vm/lib/double_patch.dart"
- "_internal/vm/lib/errors_patch.dart"
- "_internal/vm/lib/expando_patch.dart"
- "_internal/vm/lib/function.dart"
- "_internal/vm/lib/function_patch.dart"
- "_internal/vm/lib/growable_array.dart"
- "_internal/vm/lib/identical_patch.dart"
- "_internal/vm/lib/integers.dart"
- "_internal/vm/lib/integers_patch.dart"
- "_internal/vm/lib/invocation_mirror_patch.dart"
- "_internal/vm/lib/lib_prefix.dart"
- "_internal/vm/lib/map_patch.dart"
- "_internal/vm/lib/null_patch.dart"
- "_internal/vm/lib/object_patch.dart"
- "_internal/vm/lib/regexp_patch.dart"
- "_internal/vm/lib/stacktrace.dart"
- "_internal/vm/lib/stopwatch_patch.dart"
- "_internal/vm/lib/string_buffer_patch.dart"
- "_internal/vm/lib/string_patch.dart"
- "_internal/vm/lib/type_patch.dart"
- "_internal/vm/lib/uri_patch.dart"
- "_internal/vm/lib/weak_property.dart"
developer:
uri: "developer/developer.dart"
patches:
- "_internal/vm/lib/developer.dart"
- "_internal/vm/lib/profiler.dart"
- "_internal/vm/lib/timeline.dart"
ffi:
uri: "ffi/ffi.dart"
patches:
- "_internal/vm/lib/ffi_patch.dart"
- "_internal/vm/lib/ffi_allocation_patch.dart"
- "_internal/vm/lib/ffi_dynamic_library_patch.dart"
- "_internal/vm/lib/ffi_native_type_patch.dart"
- "_internal/vm/lib/ffi_struct_patch.dart"
_http:
uri: "_http/http.dart"
io:
uri: "io/io.dart"
patches:
- "_internal/vm/bin/common_patch.dart"
- "_internal/vm/bin/directory_patch.dart"
- "_internal/vm/bin/eventhandler_patch.dart"
- "_internal/vm/bin/file_patch.dart"
- "_internal/vm/bin/file_system_entity_patch.dart"
- "_internal/vm/bin/filter_patch.dart"
- "_internal/vm/bin/io_service_patch.dart"
- "_internal/vm/bin/namespace_patch.dart"
- "_internal/vm/bin/platform_patch.dart"
- "_internal/vm/bin/process_patch.dart"
- "_internal/vm/bin/socket_patch.dart"
- "_internal/vm/bin/stdio_patch.dart"
- "_internal/vm/bin/secure_socket_patch.dart"
- "_internal/vm/bin/sync_socket_patch.dart"
isolate:
uri: "isolate/isolate.dart"
patches:
- "_internal/vm/lib/isolate_patch.dart"
- "_internal/vm/lib/timer_impl.dart"
math:
uri: "math/math.dart"
patches: "_internal/vm/lib/math_patch.dart"
mirrors:
uri: "mirrors/mirrors.dart"
patches:
- "_internal/vm/lib/mirrors_patch.dart"
- "_internal/vm/lib/mirrors_impl.dart"
- "_internal/vm/lib/mirror_reference.dart"
nativewrappers:
uri: "html/dartium/nativewrappers.dart"
cli:
uri: "cli/cli.dart"
patches:
- "_internal/vm/bin/cli_patch.dart"
typed_data:
uri: "typed_data/typed_data.dart"
patches: "_internal/vm/lib/typed_data_patch.dart"
_vmservice:
uri: "vmservice/vmservice.dart"
vmservice_io:
uri: "_internal/vm/bin/vmservice_io.dart"
dart2js:
libraries:
async:
uri: "async/async.dart"
patches: "_internal/js_runtime/lib/async_patch.dart"
collection:
uri: "collection/collection.dart"
patches: "_internal/js_runtime/lib/collection_patch.dart"
convert:
uri: "convert/convert.dart"
patches: "_internal/js_runtime/lib/convert_patch.dart"
core:
uri: "core/core.dart"
patches: "_internal/js_runtime/lib/core_patch.dart"
developer:
uri: "developer/developer.dart"
patches: "_internal/js_runtime/lib/developer_patch.dart"
html:
uri: "html/dart2js/html_dart2js.dart"
html_common:
uri: "html/html_common/html_common_dart2js.dart"
indexed_db:
uri: "indexed_db/dart2js/indexed_db_dart2js.dart"
_http:
uri: "_http/http.dart"
io:
uri: "io/io.dart"
patches: "_internal/js_runtime/lib/io_patch.dart"
supported: false
isolate:
uri: "isolate/isolate.dart"
patches: "_internal/js_runtime/lib/isolate_patch.dart"
supported: false
js:
uri: "js/js.dart"
patches: "_internal/js_runtime/lib/js_patch.dart"
_js:
uri: "js/_js.dart"
patches: "js/_js_client.dart"
_js_annotations:
uri: "js/_js_annotations.dart"
js_util:
uri: "js_util/js_util.dart"
math:
uri: "math/math.dart"
patches: "_internal/js_runtime/lib/math_patch.dart"
typed_data:
uri: "typed_data/typed_data.dart"
patches: "_internal/js_runtime/lib/typed_data_patch.dart"
_native_typed_data:
uri: "_internal/js_runtime/lib/native_typed_data.dart"
svg:
uri: "svg/dart2js/svg_dart2js.dart"
web_audio:
uri: "web_audio/dart2js/web_audio_dart2js.dart"
web_gl:
uri: "web_gl/dart2js/web_gl_dart2js.dart"
web_sql:
uri: "web_sql/dart2js/web_sql_dart2js.dart"
_dart2js_runtime_metrics:
uri: "_internal/js_runtime/lib/dart2js_runtime_metrics.dart"
_internal:
uri: "internal/internal.dart"
patches: "_internal/js_runtime/lib/internal_patch.dart"
_js_helper:
uri: "_internal/js_runtime/lib/js_helper.dart"
_late_helper:
uri: "_internal/js_runtime/lib/late_helper.dart"
_rti:
uri: "_internal/js_runtime/lib/rti.dart"
_interceptors:
uri: "_internal/js_runtime/lib/interceptors.dart"
_foreign_helper:
uri: "_internal/js_runtime/lib/foreign_helper.dart"
_js_names:
uri: "_internal/js_runtime/lib/js_names.dart"
_js_primitives:
uri: "_internal/js_runtime/lib/js_primitives.dart"
_js_embedded_names:
uri: "_internal/js_runtime/lib/shared/embedded_names.dart"
_async_await_error_codes:
uri: "_internal/js_runtime/lib/shared/async_await_error_codes.dart"
_recipe_syntax:
uri: "_internal/js_runtime/lib/shared/recipe_syntax.dart"
_metadata:
uri: "html/html_common/metadata.dart"
dart2js_server:
libraries:
async:
uri: "async/async.dart"
patches: "_internal/js_runtime/lib/async_patch.dart"
collection:
uri: "collection/collection.dart"
patches: "_internal/js_runtime/lib/collection_patch.dart"
convert:
uri: "convert/convert.dart"
patches: "_internal/js_runtime/lib/convert_patch.dart"
core:
uri: "core/core.dart"
patches: "_internal/js_runtime/lib/core_patch.dart"
developer:
uri: "developer/developer.dart"
patches: "_internal/js_runtime/lib/developer_patch.dart"
_http:
uri: "_http/http.dart"
io:
uri: "io/io.dart"
patches: "_internal/js_runtime/lib/io_patch.dart"
supported: false
isolate:
uri: "isolate/isolate.dart"
patches: "_internal/js_runtime/lib/isolate_patch.dart"
supported: false
js:
uri: "js/js.dart"
patches: "_internal/js_runtime/lib/js_patch.dart"
_js:
uri: "js/_js.dart"
patches: "js/_js_server.dart"
_js_annotations:
uri: "js/_js_annotations.dart"
js_util:
uri: "js_util/js_util.dart"
math:
uri: "math/math.dart"
patches: "_internal/js_runtime/lib/math_patch.dart"
typed_data:
uri: "typed_data/typed_data.dart"
patches: "_internal/js_runtime/lib/typed_data_patch.dart"
_native_typed_data:
uri: "_internal/js_runtime/lib/native_typed_data.dart"
_internal:
uri: "internal/internal.dart"
patches: "_internal/js_runtime/lib/internal_patch.dart"
_dart2js_runtime_metrics:
uri: "_internal/js_runtime/lib/dart2js_runtime_metrics.dart"
_js_helper:
uri: "_internal/js_runtime/lib/js_helper.dart"
_late_helper:
uri: "_internal/js_runtime/lib/late_helper.dart"
_rti:
uri: "_internal/js_runtime/lib/rti.dart"
_interceptors:
uri: "_internal/js_runtime/lib/interceptors.dart"
_foreign_helper:
uri: "_internal/js_runtime/lib/foreign_helper.dart"
_js_names:
uri: "_internal/js_runtime/lib/js_names.dart"
_js_primitives:
uri: "_internal/js_runtime/lib/js_primitives.dart"
_js_embedded_names:
uri: "_internal/js_runtime/lib/shared/embedded_names.dart"
_async_await_error_codes:
uri: "_internal/js_runtime/lib/shared/async_await_error_codes.dart"
_recipe_syntax:
uri: "_internal/js_runtime/lib/shared/recipe_syntax.dart"
dartdevc:
libraries:
_runtime:
uri: "_internal/js_dev_runtime/private/ddc_runtime/runtime.dart"
_debugger:
uri: "_internal/js_dev_runtime/private/debugger.dart"
_foreign_helper:
uri: "_internal/js_dev_runtime/private/foreign_helper.dart"
_http:
uri: "_http/http.dart"
_interceptors:
uri: "_internal/js_dev_runtime/private/interceptors.dart"
_internal:
uri: "internal/internal.dart"
patches: "_internal/js_dev_runtime/patch/internal_patch.dart"
_isolate_helper:
uri: "_internal/js_dev_runtime/private/isolate_helper.dart"
_js_annotations:
uri: "js/_js_annotations.dart"
_js_helper:
uri: "_internal/js_dev_runtime/private/js_helper.dart"
_js_primitives:
uri: "_internal/js_dev_runtime/private/js_primitives.dart"
_metadata:
uri: "html/html_common/metadata.dart"
_native_typed_data:
uri: "_internal/js_dev_runtime/private/native_typed_data.dart"
async:
uri: "async/async.dart"
patches: "_internal/js_dev_runtime/patch/async_patch.dart"
collection:
uri: "collection/collection.dart"
patches: "_internal/js_dev_runtime/patch/collection_patch.dart"
convert:
uri: "convert/convert.dart"
patches: "_internal/js_dev_runtime/patch/convert_patch.dart"
core:
uri: "core/core.dart"
patches: "_internal/js_dev_runtime/patch/core_patch.dart"
developer:
uri: "developer/developer.dart"
patches: "_internal/js_dev_runtime/patch/developer_patch.dart"
io:
uri: "io/io.dart"
patches: "_internal/js_dev_runtime/patch/io_patch.dart"
supported: false
isolate:
uri: "isolate/isolate.dart"
patches: "_internal/js_dev_runtime/patch/isolate_patch.dart"
supported: false
math:
uri: "math/math.dart"
patches: "_internal/js_dev_runtime/patch/math_patch.dart"
typed_data:
uri: "typed_data/typed_data.dart"
patches: "_internal/js_dev_runtime/patch/typed_data_patch.dart"
html:
uri: "html/dart2js/html_dart2js.dart"
html_common:
uri: "html/html_common/html_common_dart2js.dart"
indexed_db:
uri: "indexed_db/dart2js/indexed_db_dart2js.dart"
js:
uri: "js/js.dart"
patches: "_internal/js_dev_runtime/patch/js_patch.dart"
js_util:
uri: "js_util/js_util.dart"
svg:
uri: "svg/dart2js/svg_dart2js.dart"
web_audio:
uri: "web_audio/dart2js/web_audio_dart2js.dart"
web_gl:
uri: "web_gl/dart2js/web_gl_dart2js.dart"
web_sql:
uri: "web_sql/dart2js/web_sql_dart2js.dart"