Files
sdk/tests/lib/lib.status
T
Srujan Gaddam ac6588ba60 [dart2wasm] Optimize dartify type-checks
dartifyRaw type-checks are currently a bunch of if
cases where the check is done in JS. Instead of going
back and forth between runtimes, we can do the checks
in JS and return an enum value.

- Replaces the if cases with a externRefType method that
returns an integer that maps to some static const values.
Dart enums are slower so consts are preferred. Speeds up
type-checks by 4-5x and dartifyRaw by 1.1-1.8x for common
types using some quick local benchmarks. Also moves the
array check up as it's more common and groups the typed
array checks together.
- Reuses the externRefType helper in dartify so we don't
type-check the same value twice.
- Moves some tests from basic_test.dart to jsify_dartify_test.dart
and adds more type-checks, casts to assert types, cleans
up property getters, and adds a few missing cases.

Change-Id: Ia5fb9bfef6f9e212ea8da27362b0b4efb4cbf2fa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/379144
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2024-08-08 16:12:17 +00:00

205 lines
12 KiB
Plaintext

# 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.
html/cross_frame_test: Skip # Issue 32039, test reloads itself (not by design - investigate)
[ $arch == simarm ]
convert/utf85_test: Skip # Pass, Slow Issue 12644.
[ $compiler == dart2wasm ]
fix_data_tests/*: SkipByDesign
html/*: SkipByDesign # dart:html not supported on dart2wasm
isolate/*: SkipByDesign
js/(?!export|static_interop_test)*: SkipByDesign
js/static_interop_test/allowed_external_member_native_type_test: SkipByDesign # dart:html and dart:svg not supported on dart2wasm.
js/static_interop_test/extension_type/non_interop_extension_type_static_test: SkipByDesign # Some external checks are not run on dart2wasm.
js/static_interop_test/external_static_member_lowerings_trusttypes_test: SkipByDesign # Tests @trustTypes, which is unsupported on dart2wasm.
js/static_interop_test/static_external_extension_members_static_test: SkipByDesign # dart:html not supported on dart2wasm.
js/static_interop_test/top_level_member_annotation_static_test: SkipByDesign # Some external checks are not run on dart2wasm.
mirrors/*: SkipByDesign
web/*: SkipByDesign
[ $compiler != dart2wasm ]
js/static_interop_test/disallowed_interop_libraries_test: SkipByDesign # Only checks on dart2wasm.
[ $mode == product ]
developer/timeline_test: Skip # Not supported
isolate/issue_24243_parent_isolate_test: Skip # Requires checked mode
[ $runtime != chrome ]
js/static_interop_test/import/import_trustedscripturl_test: SkipByDesign # Trusted Types are only supported in Chrome currently.
[ $runtime == d8 ]
js/export/static_interop_mock/proto_test: SkipByDesign # Uses dart:html.
js/static_interop_test/constants_test: SkipByDesign # Uses dart:html.
js/static_interop_test/futurevaluetype_test: SkipByDesign # Uses dart:html.
js/static_interop_test/import/import_test: SkipByDesign # TODO(srujzs): This test uses the file system to load a module. Since the test runner doesn't start an HTTP server for d8, I don't think this is supported.
js/static_interop_test/supertype_transform_test: SkipByDesign # Uses dart:html.
[ $runtime == dart_precompiled ]
isolate/package_config_getter_test: SkipByDesign # AOT mode doesn't preserve package structure.
[ $runtime == ff ]
convert/streamed_conversion_utf8_decode_test: Slow, Pass # Issue 12029
mirrors/mirrors_reader_test: Slow, Pass # Issue 16589
[ $runtime == ie11 ]
html/request_animation_frame_test: Skip # Times out. Issue 22167
html/transition_event_test: Skip # Times out. Issue 22167
[ $runtime == safari ]
html/indexeddb_1_test/functional: Skip # Times out. Issue 21433
html/indexeddb_3_test: Skip # Times out 1 out of 10.
html/worker_api_test: Skip # Issue 13221
[ $runtime != vm ]
isolate/spawn_uri__package_uri__test: SkipByDesign # This test uses Isolate.spawnUri and only works in JIT mode.
[ $system == windows ]
html/xhr_test/xhr: Skip # Times out. Issue 21527
[ $csp ]
html/js_interop_constructor_name/*: SkipByDesign # Issue 42085.
isolate/deferred_in_isolate2_test: Skip # Issue 16898. Deferred loading does not work from an isolate in CSP-mode
js/call_field_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/call_getter_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/call_method_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/extends_test/extends_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/extends_test/extends_with_es6_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/instanceof_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/is_check_and_as_cast_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/js_util/async_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/js_util/implicit_downcast_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/js_util/jsify_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/js_util/operator_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/js_util/promise_reject_null_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/js_util/properties_implicit_checks_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/js_util/properties_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/method_call_on_object_test: SkipByDesign # Issue 42085.
js/mock_test/*: SkipByDesign # Issue 42085.
js/parameters_test: SkipByDesign # Issue 42085.
js/static_interop_test/call_getter_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/call_method_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/extension_type/external_extension_member_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/extension_type/external_member_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/extension_type/external_static_member_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/external_extension_members_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/external_static_member_lowerings_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/external_static_member_lowerings_trusttypes_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/isa/functional_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/isa/library_renaming_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/js_array_proxy_or_ref_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/js_array_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/js_function_arity_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/js_function_conversions_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/js_typed_array_test: SkipByDesign # CSP policy disallows injected JS code
js/static_interop_test/jsify_dartify_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/jsobject_type_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/native_error_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/static_interop_test/typed_data_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/trust_types_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
js/type_parameter_lowering_test: SkipByDesign # Issue 42085. CSP policy disallows injected JS code
[ $simulator ]
convert/utf85_test: Skip # Pass, Slow Issue 20111.
[ $compiler == dart2js && $runtime == d8 ]
js/js_util/async_test: Skip # Issue 54520
js/js_util/promise_reject_null_test: Skip # Issue 54520
js/static_interop_test/js_types_test: Skip # Issue 54520
[ $compiler != dart2js && $compiler != dart2wasm && $compiler != ddc ]
js_interop_unsafe/*: SkipByDesign # Only supported on web backends.
[ $compiler != dart2js && $compiler != ddc ]
web/*: SkipByDesign
[ $runtime == chrome && $system == macos ]
convert/streamed_conversion_utf8_encode_test: SkipSlow # Times out. Issue 22050
html/canvasrendering/arc_test: Skip # Issue 42048
html/canvasrendering/draw_image_canvas_element_test: Skip # Issue 42048
html/canvasrendering/fill_text_test: Skip # Issue 42048
html/canvasrendering/image_element_test: Skip # Issue 42048
html/canvasrendering/pixel_manipulation_test: Skip # Issue 42048
html/request_animation_frame_test: Skip # Times out. Issue 22167
html/transition_event_test: Skip # Times out. Issue 22167
[ $runtime != dart_precompiled && ($compiler != dartk || $runtime != vm) ]
isolate/vm_rehash_test: SkipByDesign
[ $arch != x64 || $runtime != vm ]
isolate/int32_length_overflow_test: SkipSlow
[ $compiler != dartk || $runtime != vm ]
isolate/package_config_test: SkipByDesign # Uses Isolate.packageConfig
isolate/package_resolve_test: SkipByDesign # Uses Isolate.resolvePackageUri
isolate/scenarios/*: SkipByDesign # Use automatic package resolution, spawnFunction and .dart URIs.
isolate/spawn_uri_fail_test: SkipByDesign # Uses dart:io.
[ $runtime == chrome || $runtime == ff ]
async/slow_consumer2_test: SkipSlow # Times out. Issue 22050
async/stream_timeout_test: SkipSlow # Times out. Issue 22050
# It makes no sense to run any test that uses spawnURI under the simulator
# as that would involve running CFE (the front end) in simulator mode
# to compile the URI file specified in spawnURI code.
# These Isolate tests that use spawnURI are hence skipped on purpose.
[ $runtime == dart_precompiled || $runtime == vm && $simulator ]
isolate/count_test: Skip # Isolate.spawnUri
isolate/cross_isolate_message_test: Skip # Isolate.spawnUri
isolate/deferred_in_isolate2_test: Skip # Isolate.spawnUri
isolate/deferred_in_isolate_test: Skip # Isolate.spawnUri
isolate/error_at_spawnuri_test: Skip # Isolate.spawnUri
isolate/error_exit_at_spawnuri_test: Skip # Isolate.spawnUri
isolate/exit_at_spawnuri_test: Skip # Isolate.spawnUri
isolate/illegal_msg_mirror_test: Skip # Isolate.spawnUri
isolate/isolate_complex_messages_test: Skip # Isolate.spawnUri
isolate/issue_21398_parent_isolate1_test: Skip # Isolate.spawnUri
isolate/issue_21398_parent_isolate_test: Skip # Isolate.spawnUri
isolate/issue_24243_parent_isolate_test: Skip # Isolate.spawnUri
isolate/issue_6610_test: Skip # Isolate.spawnUri
isolate/mandel_isolate_test: Skip # Isolate.spawnUri
isolate/message2_test: Skip # Isolate.spawnUri
isolate/message_test: Skip # Isolate.spawnUri
isolate/mint_maker_test: Skip # Isolate.spawnUri
isolate/nested_spawn2_test: Skip # Isolate.spawnUri
isolate/nested_spawn_test: Skip # Isolate.spawnUri
isolate/no_package_test: Skip # Isolate.spawnUri
isolate/package_config_test: Skip # Isolate.spawnUri
isolate/raw_port_test: Skip # Isolate.spawnUri
isolate/request_reply_test: Skip # Isolate.spawnUri
isolate/scenarios/automatic_resolution_spec/package_resolve_test: Skip # Isolate.spawnUri
isolate/scenarios/package_relative_spec/package_relative_spec_test: Skip # Isolate.spawnUri
isolate/scenarios/short_package/short_package_test: Skip # Isolate.spawnUri
isolate/spawn_function_custom_class_test: Skip # Isolate.spawnUri
isolate/spawn_function_test: Skip # Isolate.spawnUri
isolate/spawn_uri_exported_main_test: Skip # Isolate.spawnUri
isolate/spawn_uri_missing_from_isolate_test: Skip # Isolate.spawnUri
isolate/spawn_uri_missing_test: Skip # Isolate.spawnUri
isolate/spawn_uri_multi_test: Skip # Isolate.spawnUri
isolate/spawn_uri_nested_vm_test: Skip # Isolate.spawnUri
isolate/spawn_uri_test: Skip # Isolate.spawnUri
isolate/spawn_uri_vm_test: Skip # Isolate.spawnUri
isolate/stacktrace_message_test: Skip # Isolate.spawnUri
isolate/static_function_test: Skip # Isolate.spawnUri
isolate/unresolved_ports_test: Skip # Isolate.spawnUri
[ $hot_reload || $hot_reload_rollback ]
convert/chunked_conversion_utf88_test: SkipSlow
convert/utf85_test: SkipSlow
isolate/deferred_in_isolate2_test: Crash # Requires deferred libraries
isolate/deferred_in_isolate_test: Crash # Requires deferred libraries
isolate/issue_21398_parent_isolate2_test: Crash # Requires deferred libraries
isolate/spawn_uri_nested_vm_test: Crash # Issue 28192
mirrors/closurization_equivalence_test: SkipByDesign # Method equality
mirrors/deferred_constraints_constants_test: Crash # Requires deferred libraries
mirrors/deferred_mirrors_metadata_test: Crash # Deferred loading
mirrors/deferred_mirrors_metatarget_test: Crash # Deferred loading
mirrors/deferred_mirrors_update_test: Crash # Deferred loading
mirrors/library_enumeration_deferred_loading_test: Crash # Deferred loading
mirrors/library_import_deferred_loading_test: Crash # Deferred loading
mirrors/library_imports_deferred_test: Crash # Deferred loading
mirrors/load_library_test: Crash # Deferred loading
mirrors/typedef_deferred_library_test: Crash # Deferred loading
typed_data/zeroed_allocation_test: SkipSlow