From 85f8e5516d096d68615552009eb3b907491ec850 Mon Sep 17 00:00:00 2001 From: Erich Gubler Date: Thu, 2 May 2024 18:17:36 +0000 Subject: [PATCH] Bug 1893057 - build(webgpu): update WGPU to latest `trunk` as of 2024-04-22 r=webgpu-reviewers,supply-chain-reviewers,jimb MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Incorporates adjustments to `expected` test outcomes in WebGPU CTS' WPT tests using `moz-webgpu-cts` 0.9.0. Namely, I used `moz-webgpu-cts update-expected --preset new-fx …` with reports from [try:ee88f1757a59](https://treeherder.mozilla.org/jobs?repo=try&tier=1%2C2%2C3&revision=ee88f1757a59c85dd5e7428102c95e2e45fd1a54&selectedTaskRun=ObmJmsZ0S9S3fNNKA-mY8Q.0). Differential Revision: https://phabricator.services.mozilla.com/D208801 --- .cargo/config.toml.in | 9 +- Cargo.lock | 46 +- Cargo.toml | 4 + gfx/wgpu_bindings/Cargo.toml | 14 +- gfx/wgpu_bindings/moz.yaml | 4 +- gfx/wgpu_bindings/src/client.rs | 2 +- gfx/wgpu_bindings/src/command.rs | 82 +- gfx/wgpu_bindings/src/lib.rs | 2 - gfx/wgpu_bindings/src/server.rs | 12 +- supply-chain/audits.toml | 42 +- supply-chain/config.toml | 6 + supply-chain/imports.lock | 28 + .../operation/buffers/map/cts.https.html.ini | 129 ++- .../command_buffer/basic/cts.https.html.ini | 2 + .../copyTextureToTexture/cts.https.html.ini | 170 ++-- .../image_copy/cts.https.html.ini | 144 ++-- .../state_tracking/cts.https.html.ini | 12 + .../compute/basic/cts.https.html.ini | 6 +- .../overrides/cts.https.html.ini | 8 - .../multiple_buffers/cts.https.html.ini | 11 +- .../buffer/single_buffer/cts.https.html.ini | 44 +- .../same_subresource/cts.https.html.ini | 55 +- .../render_pass/storeOp/cts.https.html.ini | 3 +- .../render_pass/storeop2/cts.https.html.ini | 2 + .../overrides/cts.https.html.ini | 8 + .../cts.https.html.ini | 27 +- .../primitive_topology/cts.https.html.ini | 2 + .../sample_mask/cts.https.html.ini | 36 +- .../rendering/basic/cts.https.html.ini | 2 +- .../color_target_state/cts.https.html.ini | 53 +- .../rendering/depth/cts.https.html.ini | 19 + .../depth_clip_clamp/cts.https.html.ini | 39 +- .../rendering/draw/cts.https.html.ini | 142 ++-- .../rendering/stencil/cts.https.html.ini | 57 +- .../texture_zero/cts.https.html.ini | 40 +- .../read_only/cts.https.html.ini | 132 +++- .../read_write/cts.https.html.ini | 2 + .../texture_view/write/cts.https.html.ini | 10 +- .../correctness/cts.https.html.ini | 105 ++- .../index_format/cts.https.html.ini | 2 +- .../buffer/create/cts.https.html.ini | 75 +- .../buffer/mapping/cts.https.html.ini | 4 + .../texture_formats/cts.https.html.ini | 176 +++-- .../limits/maxBindGroups/cts.https.html.ini | 2 + .../cts.https.html.ini | 17 +- .../cts.https.html.ini | 2 + .../cts.https.html.ini | 244 +++--- .../cts.https.html.ini | 4 + .../cts.https.html.ini | 103 +-- .../cts.https.html.ini | 2 + .../cts.https.html.ini | 111 +-- .../cts.https.html.ini | 182 ++--- .../cts.https.html.ini | 395 ++++------ .../cts.https.html.ini | 81 +- .../cts.https.html.ini | 24 +- .../cts.https.html.ini | 201 ++--- .../cts.https.html.ini | 4 + .../compute_pipeline/cts.https.html.ini | 84 +- .../createBindGroup/cts.https.html.ini | 89 ++- .../createBindGroupLayout/cts.https.html.ini | 72 +- .../createTexture/cts.https.html.ini | 59 +- .../validation/createView/cts.https.html.ini | 45 +- .../copyTextureToTexture/cts.https.html.ini | 33 +- .../cmds/render/draw/cts.https.html.ini | 4 + .../cts.https.html.ini | 185 ++--- .../validation/error_scope/cts.https.html.ini | 7 +- .../buffer_related/cts.https.html.ini | 9 +- .../buffer_texture_copies/cts.https.html.ini | 8 + .../layout_related/cts.https.html.ini | 180 +++-- .../texture_related/cts.https.html.ini | 59 +- .../layout_shader_compat/cts.https.html.ini | 54 +- .../depth_stencil_state/cts.https.html.ini | 46 +- .../fragment_state/cts.https.html.ini | 549 ++++++++----- .../render_pipeline/misc/cts.https.html.ini | 8 + .../overrides/cts.https.html.ini | 20 - .../resource_compatibility/cts.https.html.ini | 15 +- .../vertex_state/cts.https.html.ini | 34 +- .../buffer/in_pass_encoder/cts.https.html.ini | 2 +- .../in_pass_encoder/cts.https.html.ini | 6 +- .../in_render_common/cts.https.html.ini | 149 +++- .../entry_point/cts.https.html.ini | 4 + .../device_lost/destroy/cts.https.html.ini | 14 +- .../createBindGroupLayout/cts.https.html.ini | 2 + .../access/matrix/index/cts.https.html.ini | 58 +- .../vector/components/cts.https.html.ini | 71 +- .../access/vector/index/cts.https.html.ini | 53 +- .../binary/af_comparison/cts.https.html.ini | 36 +- .../af_matrix_addition/cts.https.html.ini | 21 +- .../af_matrix_subtraction/cts.https.html.ini | 8 +- .../binary/ai_comparison/cts.https.html.ini | 8 - .../binary/bitwise/cts.https.html.ini | 161 ++-- .../binary/bitwise_shift/cts.https.html.ini | 314 ++++---- .../f16_matrix_addition/cts.https.html.ini | 3 +- .../cts.https.html.ini | 6 + .../f16_matrix_subtraction/cts.https.html.ini | 9 +- .../cts.https.html.ini | 3 +- .../binary/f16_remainder/cts.https.html.ini | 18 + .../f32_matrix_addition/cts.https.html.ini | 32 +- .../cts.https.html.ini | 83 +- .../f32_matrix_subtraction/cts.https.html.ini | 28 +- .../cts.https.html.ini | 14 +- .../binary/u32_comparison/cts.https.html.ini | 12 + .../call/builtin/acosh/cts.https.html.ini | 6 + .../builtin/arrayLength/cts.https.html.ini | 57 +- .../atomics/atomicAnd/cts.https.html.ini | 18 +- .../cts.https.html.ini | 10 +- .../atomics/atomicExchange/cts.https.html.ini | 112 +-- .../atomics/atomicLoad/cts.https.html.ini | 54 +- .../atomics/atomicOr/cts.https.html.ini | 67 +- .../atomics/atomicStore/cts.https.html.ini | 20 +- .../atomics/atomicXor/cts.https.html.ini | 11 +- .../call/builtin/bitcast/cts.https.html.ini | 735 ++++++++++-------- .../call/builtin/clamp/cts.https.html.ini | 8 +- .../countLeadingZeros/cts.https.html.ini | 17 + .../call/builtin/cross/cts.https.html.ini | 10 +- .../call/builtin/distance/cts.https.html.ini | 5 + .../call/builtin/dot/cts.https.html.ini | 22 +- .../call/builtin/dpdxFine/cts.https.html.ini | 2 + .../builtin/extractBits/cts.https.html.ini | 18 + .../builtin/faceForward/cts.https.html.ini | 6 +- .../call/builtin/fma/cts.https.html.ini | 16 +- .../call/builtin/fract/cts.https.html.ini | 2 + .../builtin/inversesqrt/cts.https.html.ini | 31 +- .../call/builtin/length/cts.https.html.ini | 32 +- .../call/builtin/log2/cts.https.html.ini | 1 + .../call/builtin/mix/cts.https.html.ini | 48 +- .../call/builtin/normalize/cts.https.html.ini | 8 +- .../builtin/pack2x16float/cts.https.html.ini | 2 +- .../call/builtin/pow/cts.https.html.ini | 10 +- .../call/builtin/reflect/cts.https.html.ini | 18 +- .../call/builtin/select/cts.https.html.ini | 101 +-- .../call/builtin/sinh/cts.https.html.ini | 5 + .../textureDimensions/cts.https.html.ini | 21 +- .../textureNumLevels/cts.https.html.ini | 4 + .../call/user/ptr_params/cts.https.html.ini | 18 + .../constructor/non_zero/cts.https.html.ini | 259 +++--- .../expression/precedence/cts.https.html.ini | 12 +- .../cts.https.html.ini | 120 +-- .../unary/af_arithmetic/cts.https.html.ini | 6 +- .../unary/f32_conversion/cts.https.html.ini | 16 + .../unary/i32_conversion/cts.https.html.ini | 2 + .../unary/u32_conversion/cts.https.html.ini | 14 + .../memory_layout/cts.https.html.ini | 221 +++--- .../robust_access/cts.https.html.ini | 52 +- .../robust_access_vertex/cts.https.html.ini | 82 +- .../compute_builtins/cts.https.html.ini | 1 + .../fragment_builtins/cts.https.html.ini | 38 +- .../workgroup_size/cts.https.html.ini | 24 +- .../execution/zero_init/cts.https.html.ini | 30 +- .../validation/decl/var/cts.https.html.ini | 64 +- .../access/vector/cts.https.html.ini | 6 +- .../binary/add_sub_mul/cts.https.html.ini | 184 +++-- .../binary/and_or_xor/cts.https.html.ini | 56 +- .../binary/bitwise_shift/cts.https.html.ini | 55 +- .../binary/comparison/cts.https.html.ini | 59 +- .../binary/div_rem/cts.https.html.ini | 47 +- .../call/builtin/atan2/cts.https.html.ini | 9 +- .../call/builtin/barriers/cts.https.html.ini | 4 + .../call/builtin/clamp/cts.https.html.ini | 50 +- .../builtin/derivatives/cts.https.html.ini | 11 +- .../call/builtin/distance/cts.https.html.ini | 2 +- .../builtin/extractBits/cts.https.html.ini | 22 +- .../builtin/faceForward/cts.https.html.ini | 33 +- .../firstLeadingBit/cts.https.html.ini | 8 + .../call/builtin/fract/cts.https.html.ini | 30 +- .../builtin/insertBits/cts.https.html.ini | 6 +- .../call/builtin/length/cts.https.html.ini | 11 +- .../call/builtin/min/cts.https.html.ini | 2 +- .../call/builtin/modf/cts.https.html.ini | 16 +- .../call/builtin/pack4xU8/cts.https.html.ini | 8 + .../call/builtin/select/cts.https.html.ini | 86 +- .../call/builtin/sqrt/cts.https.html.ini | 23 +- .../call/builtin/tan/cts.https.html.ini | 30 +- .../builtin/textureGather/cts.https.html.ini | 263 ++++--- .../textureGatherCompare/cts.https.html.ini | 18 +- .../builtin/textureLoad/cts.https.html.ini | 48 +- .../builtin/textureSample/cts.https.html.ini | 91 +-- .../textureSampleBias/cts.https.html.ini | 131 +++- .../textureSampleCompare/cts.https.html.ini | 67 +- .../cts.https.html.ini | 18 +- .../textureSampleGrad/cts.https.html.ini | 140 ++-- .../textureSampleLevel/cts.https.html.ini | 299 ++++--- .../builtin/textureStore/cts.https.html.ini | 64 +- .../expression/precedence/cts.https.html.ini | 12 +- .../cts.https.html.ini | 9 +- .../arithmetic_negation/cts.https.html.ini | 4 + .../alias_analysis/cts.https.html.ini | 118 +-- .../functions/restrictions/cts.https.html.ini | 46 +- .../validation/parse/align/cts.https.html.ini | 102 ++- .../parse/diagnostic/cts.https.html.ini | 41 +- .../parse/discard/cts.https.html.ini | 2 + .../parse/identifiers/cts.https.html.ini | 540 +++++++------ .../parse/must_use/cts.https.html.ini | 30 +- .../parse/var_and_let/cts.https.html.ini | 4 +- .../shader_io/builtins/cts.https.html.ini | 24 +- .../group_and_binding/cts.https.html.ini | 101 ++- .../shader_io/interpolate/cts.https.html.ini | 89 ++- .../shader_io/invariant/cts.https.html.ini | 6 + .../layout_constraints/cts.https.html.ini | 41 +- .../shader_io/locations/cts.https.html.ini | 20 + .../types/textures/cts.https.html.ini | 49 +- .../uniformity/uniformity/cts.https.html.ini | 52 +- .../canvas/configure/cts.https.html.ini | 52 +- .../cts.https.html.ini | 14 + .../ImageBitmap/cts.https.html.ini | 42 +- .../ImageData/cts.https.html.ini | 6 +- .../copyToTexture/canvas/cts.https.html.ini | 261 +++++-- .../copyToTexture/image/cts.https.html.ini | 6 +- .../copyToTexture/video/cts.https.html.ini | 24 +- .../external_texture/video/cts.https.html.ini | 30 +- .../gpu-descriptor-types/.cargo-checksum.json | 2 +- .../rust/gpu-descriptor-types/Cargo.toml | 23 +- .../rust/gpu-descriptor-types/src/device.rs | 128 +-- .../rust/gpu-descriptor-types/src/lib.rs | 12 +- .../rust/gpu-descriptor-types/src/types.rs | 86 +- .../rust/gpu-descriptor/.cargo-checksum.json | 2 +- third_party/rust/gpu-descriptor/Cargo.toml | 14 +- .../rust/gpu-descriptor/src/allocator.rs | 38 +- third_party/rust/naga/.cargo-checksum.json | 2 +- third_party/rust/naga/Cargo.toml | 4 +- third_party/rust/naga/src/back/dot/mod.rs | 90 +++ .../rust/naga/src/back/glsl/features.rs | 23 + third_party/rust/naga/src/back/glsl/mod.rs | 131 +++- third_party/rust/naga/src/back/hlsl/conv.rs | 5 + third_party/rust/naga/src/back/hlsl/help.rs | 94 ++- third_party/rust/naga/src/back/hlsl/mod.rs | 1 + third_party/rust/naga/src/back/hlsl/writer.rs | 304 +++++++- third_party/rust/naga/src/back/msl/mod.rs | 23 + third_party/rust/naga/src/back/msl/writer.rs | 181 +++-- .../rust/naga/src/back/pipeline_constants.rs | 39 +- third_party/rust/naga/src/back/spv/block.rs | 25 +- .../rust/naga/src/back/spv/instructions.rs | 67 ++ third_party/rust/naga/src/back/spv/mod.rs | 3 +- .../rust/naga/src/back/spv/subgroup.rs | 207 +++++ third_party/rust/naga/src/back/spv/writer.rs | 43 +- third_party/rust/naga/src/back/wgsl/writer.rs | 122 +++ .../rust/naga/src/compact/expressions.rs | 4 + .../rust/naga/src/compact/statements.rs | 67 ++ .../rust/naga/src/front/spv/convert.rs | 5 + third_party/rust/naga/src/front/spv/error.rs | 2 + third_party/rust/naga/src/front/spv/mod.rs | 253 +++++- .../rust/naga/src/front/wgsl/lower/mod.rs | 211 +++-- .../rust/naga/src/front/wgsl/parse/conv.rs | 28 + third_party/rust/naga/src/lib.rs | 100 ++- .../rust/naga/src/proc/constant_evaluator.rs | 8 + third_party/rust/naga/src/proc/mod.rs | 74 +- third_party/rust/naga/src/proc/terminator.rs | 3 + third_party/rust/naga/src/proc/typifier.rs | 5 + third_party/rust/naga/src/valid/analyzer.rs | 44 ++ third_party/rust/naga/src/valid/expression.rs | 1 + third_party/rust/naga/src/valid/function.rs | 242 +++++- third_party/rust/naga/src/valid/handles.rs | 34 + third_party/rust/naga/src/valid/interface.rs | 35 +- third_party/rust/naga/src/valid/mod.rs | 71 +- third_party/rust/naga/src/valid/type.rs | 1 - third_party/rust/serde/.cargo-checksum.json | 2 +- third_party/rust/serde/Cargo.toml | 4 +- third_party/rust/serde/build.rs | 6 + third_party/rust/serde/src/de/impls.rs | 119 ++- third_party/rust/serde/src/de/mod.rs | 8 +- third_party/rust/serde/src/lib.rs | 5 +- third_party/rust/serde/src/private/de.rs | 7 + third_party/rust/serde/src/private/doc.rs | 5 +- third_party/rust/serde/src/private/ser.rs | 132 ++-- third_party/rust/serde/src/ser/fmt.rs | 16 +- third_party/rust/serde/src/ser/impls.rs | 51 +- third_party/rust/serde/src/ser/impossible.rs | 32 +- third_party/rust/serde/src/ser/mod.rs | 79 +- .../rust/serde_derive/.cargo-checksum.json | 2 +- third_party/rust/serde_derive/Cargo.toml | 3 +- third_party/rust/serde_derive/src/lib.rs | 2 +- third_party/rust/serde_derive/src/ser.rs | 4 +- .../rust/thiserror-impl/.cargo-checksum.json | 2 +- third_party/rust/thiserror-impl/Cargo.toml | 2 +- third_party/rust/thiserror-impl/src/ast.rs | 2 +- third_party/rust/thiserror-impl/src/attr.rs | 15 +- third_party/rust/thiserror-impl/src/expand.rs | 4 +- .../rust/thiserror/.cargo-checksum.json | 2 +- third_party/rust/thiserror/Cargo.toml | 4 +- third_party/rust/thiserror/build.rs | 20 +- third_party/rust/thiserror/src/lib.rs | 2 +- .../rust/thiserror/tests/test_lints.rs | 2 + .../rust/wgpu-core/.cargo-checksum.json | 2 +- third_party/rust/wgpu-core/src/any_surface.rs | 95 --- .../rust/wgpu-core/src/command/allocator.rs | 11 +- .../rust/wgpu-core/src/command/bundle.rs | 21 +- .../rust/wgpu-core/src/command/compute.rs | 314 +++----- .../wgpu-core/src/command/compute_command.rs | 322 ++++++++ third_party/rust/wgpu-core/src/command/mod.rs | 77 +- .../rust/wgpu-core/src/command/render.rs | 152 ++-- third_party/rust/wgpu-core/src/device/bgl.rs | 2 +- .../rust/wgpu-core/src/device/global.rs | 4 +- third_party/rust/wgpu-core/src/device/life.rs | 89 ++- .../rust/wgpu-core/src/device/queue.rs | 11 +- .../rust/wgpu-core/src/device/resource.rs | 96 ++- third_party/rust/wgpu-core/src/hal_api.rs | 20 +- third_party/rust/wgpu-core/src/hub.rs | 2 +- third_party/rust/wgpu-core/src/identity.rs | 40 +- third_party/rust/wgpu-core/src/instance.rs | 318 ++++---- third_party/rust/wgpu-core/src/lib.rs | 2 +- third_party/rust/wgpu-core/src/lock/mod.rs | 41 + third_party/rust/wgpu-core/src/lock/rank.rs | 143 ++++ third_party/rust/wgpu-core/src/lock/ranked.rs | 264 +++++++ .../rust/wgpu-core/src/lock/vanilla.rs | 53 ++ third_party/rust/wgpu-core/src/pipeline.rs | 5 + third_party/rust/wgpu-core/src/pool.rs | 12 +- third_party/rust/wgpu-core/src/present.rs | 13 +- third_party/rust/wgpu-core/src/registry.rs | 59 +- third_party/rust/wgpu-core/src/resource.rs | 7 +- third_party/rust/wgpu-core/src/snatch.rs | 80 +- .../rust/wgpu-core/src/track/buffer.rs | 24 +- .../rust/wgpu-core/src/track/metadata.rs | 10 +- third_party/rust/wgpu-core/src/track/mod.rs | 21 +- .../rust/wgpu-core/src/track/stateless.rs | 22 +- .../rust/wgpu-core/src/track/texture.rs | 4 +- .../rust/wgpu-hal/.cargo-checksum.json | 2 +- third_party/rust/wgpu-hal/Cargo.toml | 2 +- .../rust/wgpu-hal/examples/halmark/main.rs | 2 + .../examples/ray-traced-triangle/main.rs | 1 + third_party/rust/wgpu-hal/src/dx12/adapter.rs | 51 +- third_party/rust/wgpu-hal/src/dx12/device.rs | 15 +- third_party/rust/wgpu-hal/src/gles/adapter.rs | 33 +- third_party/rust/wgpu-hal/src/gles/device.rs | 15 +- third_party/rust/wgpu-hal/src/gles/egl.rs | 26 +- third_party/rust/wgpu-hal/src/gles/mod.rs | 1 + third_party/rust/wgpu-hal/src/gles/queue.rs | 71 +- third_party/rust/wgpu-hal/src/gles/wgl.rs | 2 + third_party/rust/wgpu-hal/src/lib.rs | 114 ++- .../rust/wgpu-hal/src/metal/adapter.rs | 10 + third_party/rust/wgpu-hal/src/metal/device.rs | 2 +- third_party/rust/wgpu-hal/src/metal/mod.rs | 1 + .../rust/wgpu-hal/src/vulkan/adapter.rs | 112 ++- .../rust/wgpu-hal/src/vulkan/command.rs | 5 + .../rust/wgpu-hal/src/vulkan/device.rs | 14 +- third_party/rust/wgpu-hal/src/vulkan/mod.rs | 1 + .../rust/wgpu-types/.cargo-checksum.json | 2 +- third_party/rust/wgpu-types/Cargo.toml | 2 +- third_party/rust/wgpu-types/src/lib.rs | 44 +- 338 files changed, 11867 insertions(+), 6259 deletions(-) create mode 100644 third_party/rust/naga/src/back/spv/subgroup.rs delete mode 100644 third_party/rust/wgpu-core/src/any_surface.rs create mode 100644 third_party/rust/wgpu-core/src/command/compute_command.rs create mode 100644 third_party/rust/wgpu-core/src/lock/mod.rs create mode 100644 third_party/rust/wgpu-core/src/lock/rank.rs create mode 100644 third_party/rust/wgpu-core/src/lock/ranked.rs create mode 100644 third_party/rust/wgpu-core/src/lock/vanilla.rs diff --git a/.cargo/config.toml.in b/.cargo/config.toml.in index 9b3688403f28..02ea1d279eef 100644 --- a/.cargo/config.toml.in +++ b/.cargo/config.toml.in @@ -30,9 +30,9 @@ git = "https://github.com/gfx-rs/metal-rs" rev = "ff8fd3d6dc7792852f8a015458d7e6d42d7fb352" replace-with = "vendored-sources" -[source."git+https://github.com/gfx-rs/wgpu?rev=2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089"] +[source."git+https://github.com/gfx-rs/wgpu?rev=d00a69615b74ef75aeb428a7c00fa1a91eb13e97"] git = "https://github.com/gfx-rs/wgpu" -rev = "2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +rev = "d00a69615b74ef75aeb428a7c00fa1a91eb13e97" replace-with = "vendored-sources" [source."git+https://github.com/glandium/mio?rev=9a2ef335c366044ffe73b1c4acabe50a1daefe05"] @@ -110,6 +110,11 @@ git = "https://github.com/servo/unicode-bidi" rev = "ca612daf1c08c53abe07327cb3e6ef6e0a760f0c" replace-with = "vendored-sources" +[source."git+https://github.com/zakarumych/gpu-descriptor?rev=7b71a4e47c81903ad75e2c53deb5ab1310f6ff4d"] +git = "https://github.com/zakarumych/gpu-descriptor" +rev = "7b71a4e47c81903ad75e2c53deb5ab1310f6ff4d" +replace-with = "vendored-sources" + # Take advantage of the fact that cargo will treat lines starting with # # as comments to add preprocessing directives. This file can thus by copied diff --git a/Cargo.lock b/Cargo.lock index 3a5ac68cdfc4..a8bf1dde0e98 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1207,10 +1207,10 @@ dependencies = [ [[package]] name = "d3d12" version = "0.19.0" -source = "git+https://github.com/gfx-rs/wgpu?rev=2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089#2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +source = "git+https://github.com/gfx-rs/wgpu?rev=d00a69615b74ef75aeb428a7c00fa1a91eb13e97#d00a69615b74ef75aeb428a7c00fa1a91eb13e97" dependencies = [ "bitflags 2.5.0", - "libloading 0.7.999", + "libloading 0.8.3", "winapi", ] @@ -2541,22 +2541,20 @@ dependencies = [ [[package]] name = "gpu-descriptor" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b0c02e1ba0bdb14e965058ca34e09c020f8e507a760df1121728e0aef68d57a" +version = "0.3.0" +source = "git+https://github.com/zakarumych/gpu-descriptor?rev=7b71a4e47c81903ad75e2c53deb5ab1310f6ff4d#7b71a4e47c81903ad75e2c53deb5ab1310f6ff4d" dependencies = [ - "bitflags 1.999.999", + "bitflags 2.5.0", "gpu-descriptor-types", - "hashbrown 0.12.999", + "hashbrown 0.14.3", ] [[package]] name = "gpu-descriptor-types" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "363e3677e55ad168fef68cf9de3a4a310b53124c5e784c53a1d70e92d23f2126" +version = "0.2.0" +source = "git+https://github.com/zakarumych/gpu-descriptor?rev=7b71a4e47c81903ad75e2c53deb5ab1310f6ff4d#7b71a4e47c81903ad75e2c53deb5ab1310f6ff4d" dependencies = [ - "bitflags 1.999.999", + "bitflags 2.5.0", ] [[package]] @@ -3969,7 +3967,7 @@ checksum = "a2983372caf4480544083767bf2d27defafe32af49ab4df3a0b7fc90793a3664" [[package]] name = "naga" version = "0.19.2" -source = "git+https://github.com/gfx-rs/wgpu?rev=2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089#2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +source = "git+https://github.com/gfx-rs/wgpu?rev=d00a69615b74ef75aeb428a7c00fa1a91eb13e97#d00a69615b74ef75aeb428a7c00fa1a91eb13e97" dependencies = [ "arrayvec", "bit-set", @@ -5132,9 +5130,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.197" +version = "1.0.198" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" +checksum = "9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc" dependencies = [ "serde_derive", ] @@ -5160,9 +5158,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.197" +version = "1.0.198" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" +checksum = "e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9" dependencies = [ "proc-macro2", "quote", @@ -5720,18 +5718,18 @@ checksum = "aac81b6fd6beb5884b0cf3321b8117e6e5d47ecb6fc89f414cfdcca8b2fe2dd8" [[package]] name = "thiserror" -version = "1.0.57" +version = "1.0.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b" +checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.57" +version = "1.0.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81" +checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66" dependencies = [ "proc-macro2", "quote", @@ -6637,7 +6635,7 @@ dependencies = [ [[package]] name = "wgpu-core" version = "0.19.3" -source = "git+https://github.com/gfx-rs/wgpu?rev=2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089#2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +source = "git+https://github.com/gfx-rs/wgpu?rev=d00a69615b74ef75aeb428a7c00fa1a91eb13e97#d00a69615b74ef75aeb428a7c00fa1a91eb13e97" dependencies = [ "arrayvec", "bit-vec", @@ -6664,7 +6662,7 @@ dependencies = [ [[package]] name = "wgpu-hal" version = "0.19.3" -source = "git+https://github.com/gfx-rs/wgpu?rev=2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089#2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +source = "git+https://github.com/gfx-rs/wgpu?rev=d00a69615b74ef75aeb428a7c00fa1a91eb13e97#d00a69615b74ef75aeb428a7c00fa1a91eb13e97" dependencies = [ "android_system_properties", "arrayvec", @@ -6681,7 +6679,7 @@ dependencies = [ "js-sys", "khronos-egl", "libc", - "libloading 0.7.999", + "libloading 0.8.3", "log", "metal", "naga", @@ -6703,7 +6701,7 @@ dependencies = [ [[package]] name = "wgpu-types" version = "0.19.2" -source = "git+https://github.com/gfx-rs/wgpu?rev=2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089#2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +source = "git+https://github.com/gfx-rs/wgpu?rev=d00a69615b74ef75aeb428a7c00fa1a91eb13e97#d00a69615b74ef75aeb428a7c00fa1a91eb13e97" dependencies = [ "bitflags 2.5.0", "js-sys", diff --git a/Cargo.toml b/Cargo.toml index c2474647be24..ca9b735fb431 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -231,6 +231,10 @@ webext-storage = { git = "https://github.com/mozilla/application-services", rev # Patch mio 0.8.8 to use windows-sys 0.52 (backport https://github.com/tokio-rs/mio/commit/eea9e3e0c469480e5c59c01e6c3c7e5fd88f0848) mio_0_8 = { package = "mio", git = "https://github.com/glandium/mio", rev = "9a2ef335c366044ffe73b1c4acabe50a1daefe05" } +# Patch `gpu-descriptor` 0.3.0 to remove unnecessary `allocator-api2` dep.: +# Still waiting for the now-merged to be released. +gpu-descriptor = { git = "https://github.com/zakarumych/gpu-descriptor", rev = "7b71a4e47c81903ad75e2c53deb5ab1310f6ff4d" } + # Patch mio 0.6 to use winapi 0.3 and miow 0.3, getting rid of winapi 0.2. # There is not going to be new version of mio 0.6, mio now being >= 0.7.11. [patch.crates-io.mio] diff --git a/gfx/wgpu_bindings/Cargo.toml b/gfx/wgpu_bindings/Cargo.toml index 750594161ad1..36f19530d4fa 100644 --- a/gfx/wgpu_bindings/Cargo.toml +++ b/gfx/wgpu_bindings/Cargo.toml @@ -17,7 +17,7 @@ default = [] [dependencies.wgc] package = "wgpu-core" git = "https://github.com/gfx-rs/wgpu" -rev = "2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +rev = "d00a69615b74ef75aeb428a7c00fa1a91eb13e97" # TODO: remove the replay feature on the next update containing https://github.com/gfx-rs/wgpu/pull/5182 features = ["serde", "replay", "trace", "strict_asserts", "wgsl", "api_log_info"] @@ -26,37 +26,37 @@ features = ["serde", "replay", "trace", "strict_asserts", "wgsl", "api_log_info" [target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies.wgc] package = "wgpu-core" git = "https://github.com/gfx-rs/wgpu" -rev = "2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +rev = "d00a69615b74ef75aeb428a7c00fa1a91eb13e97" features = ["metal"] # We want the wgpu-core Direct3D backends on Windows. [target.'cfg(windows)'.dependencies.wgc] package = "wgpu-core" git = "https://github.com/gfx-rs/wgpu" -rev = "2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +rev = "d00a69615b74ef75aeb428a7c00fa1a91eb13e97" features = ["dx12"] # We want the wgpu-core Vulkan backend on Linux and Windows. [target.'cfg(any(windows, all(unix, not(any(target_os = "macos", target_os = "ios")))))'.dependencies.wgc] package = "wgpu-core" git = "https://github.com/gfx-rs/wgpu" -rev = "2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +rev = "d00a69615b74ef75aeb428a7c00fa1a91eb13e97" features = ["vulkan"] [dependencies.wgt] package = "wgpu-types" git = "https://github.com/gfx-rs/wgpu" -rev = "2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +rev = "d00a69615b74ef75aeb428a7c00fa1a91eb13e97" [dependencies.wgh] package = "wgpu-hal" git = "https://github.com/gfx-rs/wgpu" -rev = "2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +rev = "d00a69615b74ef75aeb428a7c00fa1a91eb13e97" features = ["windows_rs", "oom_panic", "device_lost_panic", "internal_error_panic"] [target.'cfg(windows)'.dependencies.d3d12] git = "https://github.com/gfx-rs/wgpu" -rev = "2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +rev = "d00a69615b74ef75aeb428a7c00fa1a91eb13e97" [target.'cfg(windows)'.dependencies] winapi = "0.3" diff --git a/gfx/wgpu_bindings/moz.yaml b/gfx/wgpu_bindings/moz.yaml index 436bdc087634..246693378651 100644 --- a/gfx/wgpu_bindings/moz.yaml +++ b/gfx/wgpu_bindings/moz.yaml @@ -20,11 +20,11 @@ origin: # Human-readable identifier for this version/release # Generally "version NNN", "tag SSS", "bookmark SSS" - release: commit 2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089 + release: d00a69615b74ef75aeb428a7c00fa1a91eb13e97 (2024-04-25T00:21:54Z). # Revision to pull in # Must be a long or short commit SHA (long preferred) - revision: 2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089 + revision: d00a69615b74ef75aeb428a7c00fa1a91eb13e97 license: ['MIT', 'Apache-2.0'] diff --git a/gfx/wgpu_bindings/src/client.rs b/gfx/wgpu_bindings/src/client.rs index 97e5fed54d23..15c41a2264d4 100644 --- a/gfx/wgpu_bindings/src/client.rs +++ b/gfx/wgpu_bindings/src/client.rs @@ -13,7 +13,6 @@ use crate::SwapChainId; use wgc::{id, identity::IdentityManager}; use wgt::{Backend, TextureFormat}; -pub use wgc::command::{compute_ffi::*, render_ffi::*}; use wgc::id::markers; use parking_lot::Mutex; @@ -69,6 +68,7 @@ impl ProgrammableStageDescriptor { module: self.module, entry_point: cow_label(&self.entry_point), constants: Cow::Owned(constants), + zero_initialize_workgroup_memory: true, } } } diff --git a/gfx/wgpu_bindings/src/command.rs b/gfx/wgpu_bindings/src/command.rs index 9b664283ecd7..51da50f3a2f2 100644 --- a/gfx/wgpu_bindings/src/command.rs +++ b/gfx/wgpu_bindings/src/command.rs @@ -6,9 +6,9 @@ use crate::{id, RawString}; use std::{borrow::Cow, ffi, slice}; use wgc::{ command::{ - compute_ffi, render_ffi, ComputePassDescriptor, ComputePassTimestampWrites, - RenderPassColorAttachment, RenderPassDepthStencilAttachment, RenderPassDescriptor, - RenderPassTimestampWrites, + compute_commands as compute_ffi, render_commands as render_ffi, ComputePassDescriptor, + ComputePassTimestampWrites, RenderPassColorAttachment, RenderPassDepthStencilAttachment, + RenderPassDescriptor, RenderPassTimestampWrites, }, id::CommandEncoderId, }; @@ -751,15 +751,12 @@ pub fn replay_render_pass( bind_group_id, } => { let offsets = dynamic_offsets(num_dynamic_offsets); - unsafe { - render_ffi::wgpu_render_pass_set_bind_group( - &mut dst_pass, - index, - bind_group_id, - offsets.as_ptr(), - offsets.len(), - ); - } + render_ffi::wgpu_render_pass_set_bind_group( + &mut dst_pass, + index, + bind_group_id, + offsets, + ); } RenderCommand::SetPipeline(pipeline_id) => { render_ffi::wgpu_render_pass_set_pipeline(&mut dst_pass, pipeline_id); @@ -908,28 +905,16 @@ pub fn replay_render_pass( } RenderCommand::PushDebugGroup { color, len } => { let label = strings(len); - let label = std::ffi::CString::new(label).unwrap(); - unsafe { - render_ffi::wgpu_render_pass_push_debug_group( - &mut dst_pass, - label.as_ptr(), - color, - ); - } + let label = std::str::from_utf8(label).unwrap(); + render_ffi::wgpu_render_pass_push_debug_group(&mut dst_pass, label, color); } RenderCommand::PopDebugGroup => { render_ffi::wgpu_render_pass_pop_debug_group(&mut dst_pass); } RenderCommand::InsertDebugMarker { color, len } => { let label = strings(len); - let label = std::ffi::CString::new(label).unwrap(); - unsafe { - render_ffi::wgpu_render_pass_insert_debug_marker( - &mut dst_pass, - label.as_ptr(), - color, - ); - } + let label = std::str::from_utf8(label).unwrap(); + render_ffi::wgpu_render_pass_insert_debug_marker(&mut dst_pass, label, color); } RenderCommand::WriteTimestamp { query_set_id, @@ -960,9 +945,9 @@ pub fn replay_render_pass( RenderCommand::EndPipelineStatisticsQuery => { render_ffi::wgpu_render_pass_end_pipeline_statistics_query(&mut dst_pass); } - RenderCommand::ExecuteBundle(bundle_id) => unsafe { - render_ffi::wgpu_render_pass_execute_bundles(&mut dst_pass, &bundle_id, 1); - }, + RenderCommand::ExecuteBundle(bundle_id) => { + render_ffi::wgpu_render_pass_execute_bundles(&mut dst_pass, &[bundle_id]); + } } } @@ -1001,15 +986,12 @@ pub fn replay_compute_pass( bind_group_id, } => { let offsets = dynamic_offsets(num_dynamic_offsets); - unsafe { - compute_ffi::wgpu_compute_pass_set_bind_group( - &mut dst_pass, - index, - bind_group_id, - offsets.as_ptr(), - offsets.len(), - ); - } + compute_ffi::wgpu_compute_pass_set_bind_group( + &mut dst_pass, + index, + bind_group_id, + offsets, + ); } ComputeCommand::SetPipeline(pipeline_id) => { compute_ffi::wgpu_compute_pass_set_pipeline(&mut dst_pass, pipeline_id) @@ -1026,28 +1008,16 @@ pub fn replay_compute_pass( } ComputeCommand::PushDebugGroup { color, len } => { let label = strings(len); - let label = std::ffi::CString::new(label).unwrap(); - unsafe { - compute_ffi::wgpu_compute_pass_push_debug_group( - &mut dst_pass, - label.as_ptr(), - color, - ); - } + let label = std::str::from_utf8(label).unwrap(); + compute_ffi::wgpu_compute_pass_push_debug_group(&mut dst_pass, label, color); } ComputeCommand::PopDebugGroup => { compute_ffi::wgpu_compute_pass_pop_debug_group(&mut dst_pass); } ComputeCommand::InsertDebugMarker { color, len } => { let label = strings(len); - let label = std::ffi::CString::new(label).unwrap(); - unsafe { - compute_ffi::wgpu_compute_pass_insert_debug_marker( - &mut dst_pass, - label.as_ptr(), - color, - ); - } + let label = std::str::from_utf8(label).unwrap(); + compute_ffi::wgpu_compute_pass_insert_debug_marker(&mut dst_pass, label, color); } ComputeCommand::WriteTimestamp { query_set_id, diff --git a/gfx/wgpu_bindings/src/lib.rs b/gfx/wgpu_bindings/src/lib.rs index 73e03425c01e..660b15bdc1f6 100644 --- a/gfx/wgpu_bindings/src/lib.rs +++ b/gfx/wgpu_bindings/src/lib.rs @@ -5,8 +5,6 @@ use crate::error::ErrorBufferType; use wgc::id; -pub use wgc::command::{compute_ffi::*, render_ffi::*}; - pub mod client; pub mod command; pub mod error; diff --git a/gfx/wgpu_bindings/src/server.rs b/gfx/wgpu_bindings/src/server.rs index 3ac98ca912b1..9323d391be44 100644 --- a/gfx/wgpu_bindings/src/server.rs +++ b/gfx/wgpu_bindings/src/server.rs @@ -945,11 +945,13 @@ impl Global { base, timestamp_writes, } => { - if let Err(err) = self.command_encoder_run_compute_pass_impl::( - self_id, - base.as_ref(), - timestamp_writes.as_ref(), - ) { + if let Err(err) = self + .command_encoder_run_compute_pass_with_unresolved_commands::( + self_id, + base.as_ref(), + timestamp_writes.as_ref(), + ) + { error_buf.init(err); } } diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml index 470e09e94d4f..3484f1a45a5d 100644 --- a/supply-chain/audits.toml +++ b/supply-chain/audits.toml @@ -1379,7 +1379,7 @@ who = [ "Teodor Tanasoaia ", ] criteria = "safe-to-deploy" -delta = "0.7.0 -> 0.19.0@git:2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +delta = "0.7.0 -> 0.19.0@git:d00a69615b74ef75aeb428a7c00fa1a91eb13e97" importable = false [[audits.darling]] @@ -2110,11 +2110,23 @@ who = "Erich Gubler " criteria = "safe-to-deploy" delta = "0.2.3 -> 0.3.0" +[[audits.gpu-descriptor]] +who = "Erich Gubler " +criteria = "safe-to-deploy" +delta = "0.3.0 -> 0.3.0@git:7b71a4e47c81903ad75e2c53deb5ab1310f6ff4d" +importable = false + [[audits.gpu-descriptor-types]] who = "Erich Gubler " criteria = "safe-to-deploy" delta = "0.1.1 -> 0.2.0" +[[audits.gpu-descriptor-types]] +who = "Erich Gubler " +criteria = "safe-to-deploy" +delta = "0.2.0 -> 0.2.0@git:7b71a4e47c81903ad75e2c53deb5ab1310f6ff4d" +importable = false + [[audits.guid_win]] who = "Bobby Holley " criteria = "safe-to-deploy" @@ -2757,6 +2769,11 @@ who = "Nicolas Silva " criteria = "safe-to-deploy" delta = "0.13.0 -> 0.14.0" +[[audits.naga]] +who = "Erich Gubler " +criteria = "safe-to-deploy" +delta = "0.14.0 -> 0.19.2" + [[audits.naga]] who = [ "Jim Blandy ", @@ -2765,7 +2782,7 @@ who = [ "Teodor Tanasoaia ", ] criteria = "safe-to-deploy" -delta = "0.14.0 -> 0.19.2@git:2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +delta = "0.19.2 -> 0.19.2@git:d00a69615b74ef75aeb428a7c00fa1a91eb13e97" importable = false [[audits.net2]] @@ -4585,6 +4602,11 @@ who = "Nicolas Silva " criteria = "safe-to-deploy" delta = "0.17.0 -> 0.18.0" +[[audits.wgpu-core]] +who = "Erich Gubler " +criteria = "safe-to-deploy" +delta = "0.18.0 -> 0.19.3" + [[audits.wgpu-core]] who = [ "Jim Blandy ", @@ -4593,7 +4615,7 @@ who = [ "Teodor Tanasoaia ", ] criteria = "safe-to-deploy" -delta = "0.18.0 -> 0.19.3@git:2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +delta = "0.19.3 -> 0.19.3@git:d00a69615b74ef75aeb428a7c00fa1a91eb13e97" importable = false [[audits.wgpu-hal]] @@ -4639,6 +4661,11 @@ who = "Nicolas Silva " criteria = "safe-to-deploy" delta = "0.17.0 -> 0.18.0" +[[audits.wgpu-hal]] +who = "Erich Gubler " +criteria = "safe-to-deploy" +delta = "0.18.0 -> 0.19.3" + [[audits.wgpu-hal]] who = [ "Jim Blandy ", @@ -4647,7 +4674,7 @@ who = [ "Teodor Tanasoaia ", ] criteria = "safe-to-deploy" -delta = "0.18.0 -> 0.19.3@git:2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +delta = "0.19.3 -> 0.19.3@git:d00a69615b74ef75aeb428a7c00fa1a91eb13e97" importable = false [[audits.wgpu-types]] @@ -4693,6 +4720,11 @@ who = "Nicolas Silva " criteria = "safe-to-deploy" delta = "0.17.0 -> 0.18.0" +[[audits.wgpu-types]] +who = "Erich Gubler " +criteria = "safe-to-deploy" +delta = "0.18.0 -> 0.19.2" + [[audits.wgpu-types]] who = [ "Jim Blandy ", @@ -4701,7 +4733,7 @@ who = [ "Teodor Tanasoaia ", ] criteria = "safe-to-deploy" -delta = "0.18.0 -> 0.19.2@git:2b0e3ed01cfcc4bcccc7fd63b2581b260c00b089" +delta = "0.19.2 -> 0.19.2@git:d00a69615b74ef75aeb428a7c00fa1a91eb13e97" importable = false [[audits.whatsys]] diff --git a/supply-chain/config.toml b/supply-chain/config.toml index 8146182f3f79..cc6c02536d08 100644 --- a/supply-chain/config.toml +++ b/supply-chain/config.toml @@ -72,6 +72,12 @@ notes = "The dependencies on tokio-reactor and tokio-threadpools are just a hack criteria = "safe-to-run" notes = "Used for fuzzing." +[policy.gpu-descriptor] +audit-as-crates-io = true + +[policy.gpu-descriptor-types] +audit-as-crates-io = true + [policy.http3server] criteria = "safe-to-run" notes = "Used for testing." diff --git a/supply-chain/imports.lock b/supply-chain/imports.lock index ae8517e2e2d5..9eda3a82ff2b 100644 --- a/supply-chain/imports.lock +++ b/supply-chain/imports.lock @@ -544,6 +544,13 @@ user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" +[[publisher.serde]] +version = "1.0.198" +when = "2024-04-16" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + [[publisher.serde_bytes]] version = "0.11.9" when = "2023-02-05" @@ -558,6 +565,13 @@ user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" +[[publisher.serde_derive]] +version = "1.0.198" +when = "2024-04-16" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + [[publisher.serde_json]] version = "1.0.93" when = "2023-02-08" @@ -607,6 +621,13 @@ user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" +[[publisher.thiserror]] +version = "1.0.59" +when = "2024-04-20" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + [[publisher.thiserror-impl]] version = "1.0.57" when = "2024-02-11" @@ -614,6 +635,13 @@ user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" +[[publisher.thiserror-impl]] +version = "1.0.59" +when = "2024-04-20" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + [[publisher.threadbound]] version = "0.1.5" when = "2022-12-17" diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map/cts.https.html.ini index 4e1baa2b182c..d0e7db2639bf 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/buffers/map/cts.https.html.ini @@ -1,5 +1,6 @@ [cts.https.html?q=webgpu:api,operation,buffers,map:mapAsync,mapState:*] expected: + if os == "linux" and debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:usageType="invalid";mapModeType="READ";beforeUnmap=false;beforeDestroy=false;afterUnmap=false;afterDestroy=false] expected: FAIL @@ -177,188 +178,239 @@ expected: FAIL [:usageType="read";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=false;afterDestroy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:usageType="read";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:usageType="read";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=false;afterUnmap=false;afterDestroy=false] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=false;afterUnmap=false;afterDestroy=true] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=false;afterUnmap=true;afterDestroy=false] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=false;afterUnmap=true;afterDestroy=true] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=true;afterUnmap=false;afterDestroy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=true;afterUnmap=false;afterDestroy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=true;afterUnmap=true;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="READ";beforeUnmap=false;beforeDestroy=true;afterUnmap=true;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=false;afterUnmap=false;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=false;afterUnmap=false;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=false;afterUnmap=true;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=false;afterUnmap=true;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=true;afterUnmap=false;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=true;afterUnmap=false;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="READ";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=false;afterUnmap=false;afterDestroy=false] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=false;afterUnmap=false;afterDestroy=true] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=false;afterUnmap=true;afterDestroy=false] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=false;afterUnmap=true;afterDestroy=true] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=true;afterUnmap=false;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=true;afterUnmap=false;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=true;afterUnmap=true;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=false;beforeDestroy=true;afterUnmap=true;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=false;afterUnmap=false;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=false;afterUnmap=false;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=false;afterUnmap=true;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=false;afterUnmap=true;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=false;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=false;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=false] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:usageType="write";mapModeType="WRITE";beforeUnmap=true;beforeDestroy=true;afterUnmap=true;afterDestroy=true] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -379,7 +431,8 @@ [:mapAsyncRegionLeft="explicit-expand";mapAsyncRegionRight="default-expand"] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: FAIL if os == "linux" and not debug: [PASS, FAIL] if os == "mac": FAIL @@ -417,6 +470,8 @@ [cts.https.html?q=webgpu:api,operation,buffers,map:mapAsync,read:*] + expected: + if os == "linux": [OK, TIMEOUT] [:mapAsyncRegionLeft="default-expand";mapAsyncRegionRight="default-expand"] expected: FAIL @@ -452,21 +507,21 @@ [:mapAsyncRegionLeft="minimal";mapAsyncRegionRight="default-expand"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac": FAIL [:mapAsyncRegionLeft="minimal";mapAsyncRegionRight="explicit-expand"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac": FAIL [:mapAsyncRegionLeft="minimal";mapAsyncRegionRight="minimal"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/basic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/basic/cts.https.html.ini index 01b900003e5f..b0cd9abe4e6a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/basic/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/basic/cts.https.html.ini @@ -13,6 +13,8 @@ [cts.https.html?q=webgpu:api,operation,command_buffer,basic:empty:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:] expected: if os == "win": [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/copyTextureToTexture/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/copyTextureToTexture/cts.https.html.ini index 4a3b93dab9fb..c68a4b0766ea 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/copyTextureToTexture/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/copyTextureToTexture/cts.https.html.ini @@ -1,6 +1,6 @@ [cts.https.html?q=webgpu:api,operation,command_buffer,copyTextureToTexture:color_textures,compressed,array:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] [:srcFormat="astc-10x10-unorm";dstFormat="astc-10x10-unorm";dimension="2d"] expected: if os == "win": FAIL @@ -491,341 +491,342 @@ expected: if os == "win" and debug: TIMEOUT if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] [:srcFormat="astc-10x10-unorm";dstFormat="astc-10x10-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x10-unorm";dstFormat="astc-10x10-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x10-unorm-srgb";dstFormat="astc-10x10-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x10-unorm-srgb";dstFormat="astc-10x10-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x5-unorm";dstFormat="astc-10x5-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x5-unorm";dstFormat="astc-10x5-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x5-unorm-srgb";dstFormat="astc-10x5-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x5-unorm-srgb";dstFormat="astc-10x5-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x6-unorm";dstFormat="astc-10x6-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x6-unorm";dstFormat="astc-10x6-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x6-unorm-srgb";dstFormat="astc-10x6-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x6-unorm-srgb";dstFormat="astc-10x6-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x8-unorm";dstFormat="astc-10x8-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x8-unorm";dstFormat="astc-10x8-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x8-unorm-srgb";dstFormat="astc-10x8-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-10x8-unorm-srgb";dstFormat="astc-10x8-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-12x10-unorm";dstFormat="astc-12x10-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-12x10-unorm";dstFormat="astc-12x10-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-12x10-unorm-srgb";dstFormat="astc-12x10-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-12x10-unorm-srgb";dstFormat="astc-12x10-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-12x12-unorm";dstFormat="astc-12x12-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-12x12-unorm";dstFormat="astc-12x12-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-12x12-unorm-srgb";dstFormat="astc-12x12-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-12x12-unorm-srgb";dstFormat="astc-12x12-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-4x4-unorm";dstFormat="astc-4x4-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-4x4-unorm";dstFormat="astc-4x4-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-4x4-unorm-srgb";dstFormat="astc-4x4-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-4x4-unorm-srgb";dstFormat="astc-4x4-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-5x4-unorm";dstFormat="astc-5x4-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-5x4-unorm";dstFormat="astc-5x4-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-5x4-unorm-srgb";dstFormat="astc-5x4-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-5x4-unorm-srgb";dstFormat="astc-5x4-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-5x5-unorm";dstFormat="astc-5x5-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-5x5-unorm";dstFormat="astc-5x5-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-5x5-unorm-srgb";dstFormat="astc-5x5-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-5x5-unorm-srgb";dstFormat="astc-5x5-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-6x5-unorm";dstFormat="astc-6x5-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-6x5-unorm";dstFormat="astc-6x5-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-6x5-unorm-srgb";dstFormat="astc-6x5-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-6x5-unorm-srgb";dstFormat="astc-6x5-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-6x6-unorm";dstFormat="astc-6x6-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-6x6-unorm";dstFormat="astc-6x6-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-6x6-unorm-srgb";dstFormat="astc-6x6-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-6x6-unorm-srgb";dstFormat="astc-6x6-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x5-unorm";dstFormat="astc-8x5-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x5-unorm";dstFormat="astc-8x5-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x5-unorm-srgb";dstFormat="astc-8x5-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x5-unorm-srgb";dstFormat="astc-8x5-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x6-unorm";dstFormat="astc-8x6-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x6-unorm";dstFormat="astc-8x6-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x6-unorm-srgb";dstFormat="astc-8x6-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x6-unorm-srgb";dstFormat="astc-8x6-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x8-unorm";dstFormat="astc-8x8-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x8-unorm";dstFormat="astc-8x8-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x8-unorm-srgb";dstFormat="astc-8x8-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="astc-8x8-unorm-srgb";dstFormat="astc-8x8-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="bc1-rgba-unorm";dstFormat="bc1-rgba-unorm";dimension="2d"] expected: @@ -918,8 +919,7 @@ [:srcFormat="bc6h-rgb-float";dstFormat="bc6h-rgb-float";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:srcFormat="bc6h-rgb-ufloat";dstFormat="bc6h-rgb-ufloat";dimension="2d"] expected: @@ -930,124 +930,120 @@ [:srcFormat="bc7-rgba-unorm";dstFormat="bc7-rgba-unorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:srcFormat="bc7-rgba-unorm";dstFormat="bc7-rgba-unorm-srgb";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:srcFormat="bc7-rgba-unorm-srgb";dstFormat="bc7-rgba-unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:srcFormat="bc7-rgba-unorm-srgb";dstFormat="bc7-rgba-unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:srcFormat="eac-r11snorm";dstFormat="eac-r11snorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="eac-r11unorm";dstFormat="eac-r11unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="eac-rg11snorm";dstFormat="eac-rg11snorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="eac-rg11unorm";dstFormat="eac-rg11unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgb8a1unorm";dstFormat="etc2-rgb8a1unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgb8a1unorm";dstFormat="etc2-rgb8a1unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgb8a1unorm-srgb";dstFormat="etc2-rgb8a1unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgb8a1unorm-srgb";dstFormat="etc2-rgb8a1unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgb8unorm";dstFormat="etc2-rgb8unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgb8unorm";dstFormat="etc2-rgb8unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgb8unorm-srgb";dstFormat="etc2-rgb8unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgb8unorm-srgb";dstFormat="etc2-rgb8unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgba8unorm";dstFormat="etc2-rgba8unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgba8unorm";dstFormat="etc2-rgba8unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgba8unorm-srgb";dstFormat="etc2-rgba8unorm";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:srcFormat="etc2-rgba8unorm-srgb";dstFormat="etc2-rgba8unorm-srgb";dimension="2d"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:api,operation,command_buffer,copyTextureToTexture:color_textures,non_compressed,array:*] @@ -1231,7 +1227,8 @@ [:srcFormat="r8snorm";dstFormat="r8snorm";dimension="3d"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -1239,7 +1236,7 @@ expected: if os == "win": FAIL if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:srcFormat="r8uint";dstFormat="r8uint";dimension="3d"] @@ -1947,7 +1944,8 @@ [:srcFormat="r8unorm";dstFormat="r8unorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL [:srcFormat="r8unorm";dstFormat="r8unorm";dimension="3d"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/image_copy/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/image_copy/cts.https.html.ini index 9d7c8cc9c697..9601973b6832 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/image_copy/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/image_copy/cts.https.html.ini @@ -1187,11 +1187,13 @@ expected: if os == "win": FAIL if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16float";dimension="3d"] expected: if os == "win": FAIL if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"] expected: @@ -1216,37 +1218,37 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32sint";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32uint";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r8sint";dimension="2d"] @@ -1321,6 +1323,7 @@ expected: if os == "win": FAIL if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg16uint";dimension="3d"] expected: @@ -1355,13 +1358,13 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg32uint";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rg8sint";dimension="2d"] @@ -3824,37 +3827,37 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="eac-r11snorm";dimension="2d"] @@ -3938,8 +3941,8 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"] expected: @@ -3956,19 +3959,19 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16uint";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r32float";dimension="1d"] @@ -4436,52 +4439,52 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="1d"] @@ -4507,12 +4510,12 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x10-unorm";dimension="2d"] expected: @@ -5595,7 +5598,11 @@ if os == "mac": FAIL [:format="depth24plus-stencil8";copyMethod="WriteTexture";aspect="stencil-only"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="depth32float";copyMethod="CopyT2B";aspect="depth-only"] expected: FAIL @@ -7300,15 +7307,13 @@ expected: if os == "win": FAIL if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="2d"] expected: if os == "win": FAIL if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="r16sint";dimension="3d"] expected: @@ -7846,16 +7851,14 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -10537,32 +10540,28 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="bgra8unorm-srgb";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -11200,67 +11199,62 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8sint";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8snorm";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="1d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8uint";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm";dimension="1d"] expected: @@ -11300,8 +11294,7 @@ [:initMethod="WriteTexture";checkMethod="FullCopyT2B";format="rgba8unorm-srgb";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:initMethod="WriteTexture";checkMethod="PartialCopyT2B";format="astc-10x10-unorm";dimension="2d"] @@ -12371,8 +12364,7 @@ [:format="depth16unorm";copyMethod="CopyT2B";aspect="depth-only"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:format="depth24plus-stencil8";copyMethod="CopyB2T";aspect="stencil-only"] @@ -12431,15 +12423,13 @@ [:format="stencil8";copyMethod="CopyB2T";aspect="stencil-only"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:format="stencil8";copyMethod="CopyT2B";aspect="stencil-only"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="stencil8";copyMethod="WriteTexture";aspect="stencil-only"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/programmable/state_tracking/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/programmable/state_tracking/cts.https.html.ini index cf086bff00eb..433acaedf72f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/programmable/state_tracking/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/command_buffer/programmable/state_tracking/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:bind_group_before_pipeline:*] + expected: + if os == "mac": SKIP [:encoderType="compute%20pass"] expected: if os == "win" and debug: [PASS, FAIL] @@ -13,6 +15,8 @@ [cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:bind_group_indices:*] + expected: + if os == "mac": SKIP [:encoderType="compute%20pass"] expected: if os == "win": [PASS, FAIL] @@ -27,6 +31,8 @@ [cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:bind_group_multiple_sets:*] + expected: + if os == "mac": SKIP [:encoderType="compute%20pass"] expected: if os == "win" and debug: [PASS, FAIL] @@ -41,6 +47,8 @@ [cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:bind_group_order:*] + expected: + if os == "mac": SKIP [:encoderType="compute%20pass"] expected: if os == "win": [PASS, FAIL] @@ -55,6 +63,8 @@ [cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:compatible_pipelines:*] + expected: + if os == "mac": SKIP [:encoderType="compute%20pass"] expected: if os == "win" and debug: [PASS, FAIL] @@ -69,6 +79,8 @@ [cts.https.html?q=webgpu:api,operation,command_buffer,programmable,state_tracking:one_bind_group_multiple_slots:*] + expected: + if os == "mac": SKIP [:encoderType="compute%20pass"] expected: if os == "win" and debug: [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute/basic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute/basic/cts.https.html.ini index aeaf7981aaf2..3601f96b4fdb 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute/basic/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute/basic/cts.https.html.ini @@ -1,10 +1,10 @@ [cts.https.html?q=webgpu:api,operation,compute,basic:large_dispatch:*] expected: - if os == "linux" and debug: [OK, TIMEOUT] + if os == "linux": [OK, TIMEOUT] [:dispatchSize="maximum"] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:dispatchSize=2048] expected: @@ -13,6 +13,7 @@ [:dispatchSize=2179] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:dispatchSize=256] expected: @@ -25,6 +26,7 @@ [:dispatchSize=628] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:api,operation,compute,basic:memcpy:*] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute_pipeline/overrides/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute_pipeline/overrides/cts.https.html.ini index 2a8a70946c0e..0a40d4d16d27 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute_pipeline/overrides/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/compute_pipeline/overrides/cts.https.html.ini @@ -1,9 +1,7 @@ [cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:basic:*] [:isAsync=false] - expected: FAIL [:isAsync=true] - expected: FAIL [cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:multi_entry_points:*] @@ -16,26 +14,20 @@ [cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:numeric_id:*] [:isAsync=false] - expected: FAIL [:isAsync=true] - expected: FAIL [cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:precision:*] [:isAsync=false] - expected: FAIL [:isAsync=true] - expected: FAIL [cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:shared_shader_module:*] [:isAsync=false] - expected: FAIL [:isAsync=true] - expected: FAIL [cts.https.html?q=webgpu:api,operation,compute_pipeline,overrides:workgroup_size:*] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/multiple_buffers/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/multiple_buffers/cts.https.html.ini index a17897e69e4b..860061fc00ff 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/multiple_buffers/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/multiple_buffers/cts.https.html.ini @@ -569,8 +569,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="storage";writeContext="render-bundle-encoder"] expected: @@ -1135,18 +1134,23 @@ [:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="compute-pass-encoder"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-bundle-encoder"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="storage";writeContext="render-pass-encoder"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="t2b-copy";writeContext="command-encoder"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="b2t-copy";readContext="command-encoder";writeOp="write-buffer";writeContext="queue"] expected: @@ -1289,7 +1293,8 @@ [:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="write-buffer";writeContext="queue"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/single_buffer/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/single_buffer/cts.https.html.ini index ff2be8b590a5..54b219305887 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/single_buffer/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/buffer/single_buffer/cts.https.html.ini @@ -190,11 +190,7 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="input-index";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"] expected: @@ -284,8 +280,7 @@ [:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="input-vertex";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"] @@ -606,11 +601,7 @@ expected: [FAIL, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="input-indirect";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="input-indirect-dispatch";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"] expected: FAIL @@ -673,6 +664,7 @@ expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="input-vertex";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"] expected: @@ -680,12 +672,21 @@ if os == "mac" and debug: [TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"] + expected: + if os == "mac" and not debug: [PASS, FAIL] [:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="storage";writeContext="compute-pass-encoder"] [:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, FAIL] [:boundary="queue-op";readOp="storage-read";readContext="compute-pass-encoder";writeOp="write-buffer";writeContext="queue"] + expected: + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, FAIL] [:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="b2b-copy";writeContext="command-encoder"] expected: @@ -694,7 +695,8 @@ [:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="t2b-copy";writeContext="command-encoder"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="storage-read";readContext="render-bundle-encoder";writeOp="write-buffer";writeContext="queue"] @@ -703,10 +705,17 @@ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="b2b-copy";writeContext="command-encoder"] + expected: + if os == "mac": [PASS, FAIL] [:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="t2b-copy";writeContext="command-encoder"] + expected: + if os == "win" and not debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";readOp="storage-read";readContext="render-pass-encoder";writeOp="write-buffer";writeContext="queue"] + expected: + if os == "win": [PASS, FAIL] [cts.https.html?q=webgpu:api,operation,memory_sync,buffer,single_buffer:ww:*] @@ -724,12 +733,14 @@ [:boundary="command-buffer";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","render-bundle-encoder"\]] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:boundary="command-buffer";writeOps=["b2b-copy","storage"\];contexts=["command-encoder","render-pass-encoder"\]] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -831,6 +842,7 @@ [:boundary="queue-op";writeOps=["storage","t2b-copy"\];contexts=["render-pass-encoder","command-encoder"\]] expected: if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";writeOps=["storage","write-buffer"\];contexts=["compute-pass-encoder","queue"\]] @@ -839,6 +851,8 @@ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";writeOps=["storage","write-buffer"\];contexts=["render-pass-encoder","queue"\]] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";writeOps=["t2b-copy","b2b-copy"\];contexts=["command-encoder","command-encoder"\]] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/same_subresource/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/same_subresource/cts.https.html.ini index 5c6a239bd3ed..abf5a3e06d6f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/same_subresource/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/memory_sync/texture/same_subresource/cts.https.html.ini @@ -17,21 +17,21 @@ [:boundary="command-buffer";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"attachment-resolve","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"attachment-store","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"b2t-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] @@ -40,12 +40,12 @@ if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";read={"op":"sample","in":"compute-pass-encoder"};write={"op":"t2t-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] @@ -68,14 +68,14 @@ if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";read={"op":"sample","in":"render-pass-encoder"};write={"op":"t2t-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";read={"op":"t2b-copy","in":"command-encoder"};write={"op":"attachment-resolve","in":"command-encoder"}] expected: @@ -144,14 +144,14 @@ [:boundary="command-buffer";read={"op":"t2t-copy","in":"command-encoder"};write={"op":"storage","in":"render-bundle-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";read={"op":"t2t-copy","in":"command-encoder"};write={"op":"storage","in":"render-pass-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] @@ -335,39 +335,42 @@ [:boundary="command-buffer";write={"op":"attachment-resolve","in":"command-encoder"};read={"op":"sample","in":"compute-pass-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";write={"op":"attachment-resolve","in":"command-encoder"};read={"op":"t2b-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";write={"op":"attachment-resolve","in":"command-encoder"};read={"op":"t2t-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";write={"op":"attachment-store","in":"command-encoder"};read={"op":"sample","in":"compute-pass-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";write={"op":"attachment-store","in":"command-encoder"};read={"op":"t2b-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";write={"op":"attachment-store","in":"command-encoder"};read={"op":"t2t-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] @@ -404,30 +407,30 @@ [:boundary="command-buffer";write={"op":"storage","in":"compute-pass-encoder"};read={"op":"sample","in":"compute-pass-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";write={"op":"storage","in":"compute-pass-encoder"};read={"op":"t2b-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";write={"op":"storage","in":"compute-pass-encoder"};read={"op":"t2t-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";write={"op":"storage","in":"render-bundle-encoder"};read={"op":"t2b-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";write={"op":"storage","in":"render-bundle-encoder"};read={"op":"t2t-copy","in":"command-encoder"}] expected: @@ -439,14 +442,14 @@ [:boundary="command-buffer";write={"op":"storage","in":"render-pass-encoder"};read={"op":"t2b-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";write={"op":"storage","in":"render-pass-encoder"};read={"op":"t2t-copy","in":"command-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] @@ -459,7 +462,8 @@ [:boundary="command-buffer";write={"op":"t2t-copy","in":"command-encoder"};read={"op":"sample","in":"render-bundle-encoder"}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] [:boundary="command-buffer";write={"op":"t2t-copy","in":"command-encoder"};read={"op":"sample","in":"render-pass-encoder"}] expected: @@ -742,7 +746,7 @@ if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";first={"op":"b2t-copy","in":"command-encoder"};second={"op":"storage","in":"compute-pass-encoder"}] expected: @@ -770,7 +774,7 @@ if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:boundary="command-buffer";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"attachment-resolve","in":"command-encoder"}] expected: @@ -1055,6 +1059,7 @@ if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: FAIL if os == "linux" and not debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:boundary="queue-op";first={"op":"storage","in":"compute-pass-encoder"};second={"op":"write-texture","in":"queue"}] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeOp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeOp/cts.https.html.ini index 807ad246bc8a..8af7aa2a8a92 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeOp/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeOp/cts.https.html.ini @@ -154,8 +154,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:colorFormat="rg8sint";storeOperation="discard"] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeop2/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeop2/cts.https.html.ini index 3a659c8a1c18..7d2339c82fbe 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeop2/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pass/storeop2/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:api,operation,render_pass,storeop2:storeOp_controls_whether_1x1_drawn_quad_is_stored:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:storeOp="discard"] [:storeOp="store"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/overrides/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/overrides/cts.https.html.ini index 28b4a39e1d9e..855c3d31c041 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/overrides/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/overrides/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:api,operation,render_pipeline,overrides:basic:*] + expected: + if os == "mac": SKIP [:isAsync=false] expected: if os == "win": [PASS, FAIL] @@ -13,6 +15,8 @@ [cts.https.html?q=webgpu:api,operation,render_pipeline,overrides:multi_entry_points:*] + expected: + if os == "mac": SKIP [:isAsync=false] expected: if os == "win": FAIL @@ -29,6 +33,8 @@ [cts.https.html?q=webgpu:api,operation,render_pipeline,overrides:precision:*] + expected: + if os == "mac": SKIP [:isAsync=false] expected: if os == "win": [PASS, FAIL] @@ -43,6 +49,8 @@ [cts.https.html?q=webgpu:api,operation,render_pipeline,overrides:shared_shader_module:*] + expected: + if os == "mac": SKIP [:isAsync=false] expected: if os == "win": [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/pipeline_output_targets/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/pipeline_output_targets/cts.https.html.ini index ee3b4105427e..08c324a2af0d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/pipeline_output_targets/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/pipeline_output_targets/cts.https.html.ini @@ -235,6 +235,8 @@ [cts.https.html?q=webgpu:api,operation,render_pipeline,pipeline_output_targets:color,component_count:*] + expected: + if os == "linux": [OK, TIMEOUT] [:format="bgra8unorm"] [:format="bgra8unorm-srgb"] @@ -246,10 +248,16 @@ [:format="r16uint"] [:format="r32float"] + expected: + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:format="r32sint"] + expected: + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:format="r32uint"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="r8sint"] @@ -264,10 +272,16 @@ [:format="rg16uint"] [:format="rg32float"] + expected: + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:format="rg32sint"] + expected: + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:format="rg32uint"] + expected: + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:format="rg8sint"] @@ -278,23 +292,32 @@ [:format="rgb10a2uint"] expected: if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:format="rgb10a2unorm"] + expected: + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:format="rgba16float"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="rgba16sint"] [:format="rgba16uint"] [:format="rgba32float"] + expected: + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:format="rgba32sint"] + expected: + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:format="rgba32uint"] + expected: + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:format="rgba8sint"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/primitive_topology/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/primitive_topology/cts.https.html.ini index 4fd0532bfba8..f5078d51526e 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/primitive_topology/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/primitive_topology/cts.https.html.ini @@ -76,6 +76,8 @@ if os == "mac": FAIL [:topology="triangle-list";indirect=false;drawCount=4] + expected: + if os == "linux" and debug: [PASS, FAIL] [:topology="triangle-list";indirect=false;drawCount=5] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/sample_mask/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/sample_mask/cts.https.html.ini index 764a1e9e33f0..74d5eea944a8 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/sample_mask/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/render_pipeline/sample_mask/cts.https.html.ini @@ -75,58 +75,50 @@ [:interpolated=false;sampleCount=4;rasterizationMask=3] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:interpolated=false;sampleCount=4;rasterizationMask=4] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:interpolated=false;sampleCount=4;rasterizationMask=5] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:interpolated=false;sampleCount=4;rasterizationMask=6] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:interpolated=false;sampleCount=4;rasterizationMask=7] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:interpolated=false;sampleCount=4;rasterizationMask=8] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:interpolated=false;sampleCount=4;rasterizationMask=9] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:interpolated=true;sampleCount=4;rasterizationMask=0] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL @@ -260,16 +252,14 @@ [:interpolated=false;sampleCount=1;rasterizationMask=1] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:interpolated=false;sampleCount=4;rasterizationMask=0] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:interpolated=false;sampleCount=4;rasterizationMask=1] @@ -450,16 +440,14 @@ if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:interpolated=true;sampleCount=4;rasterizationMask=4] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:interpolated=true;sampleCount=4;rasterizationMask=5] expected: [FAIL, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/basic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/basic/cts.https.html.ini index b8892eaf821b..bea168eaeaa9 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/basic/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/basic/cts.https.html.ini @@ -30,7 +30,7 @@ [:indexed=true;indirect=false] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:indexed=true;indirect=true] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/color_target_state/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/color_target_state/cts.https.html.ini index 6d4ef4bf3f0b..605cf456b73d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/color_target_state/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/color_target_state/cts.https.html.ini @@ -5714,7 +5714,7 @@ [:component="color";srcFactor="one";dstFactor="constant"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one";dstFactor="constant";operation="add"] expected: @@ -5729,6 +5729,8 @@ if os == "win" and not debug: [PASS, FAIL] [:component="color";srcFactor="one";dstFactor="dst"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one";dstFactor="dst";operation="add"] expected: @@ -5744,7 +5746,7 @@ [:component="color";srcFactor="one";dstFactor="dst-alpha"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one";dstFactor="dst-alpha";operation="add"] expected: @@ -5782,7 +5784,7 @@ [:component="color";srcFactor="one";dstFactor="one-minus-constant"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one";dstFactor="one-minus-constant";operation="add"] expected: @@ -5797,6 +5799,8 @@ if os == "win" and not debug: [PASS, FAIL] [:component="color";srcFactor="one";dstFactor="one-minus-dst"] + expected: + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one";dstFactor="one-minus-dst";operation="add"] expected: @@ -5812,7 +5816,7 @@ [:component="color";srcFactor="one";dstFactor="one-minus-dst-alpha"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one";dstFactor="one-minus-dst-alpha";operation="add"] expected: @@ -5841,6 +5845,8 @@ if os == "win" and not debug: [PASS, FAIL] [:component="color";srcFactor="one";dstFactor="one-minus-src-alpha"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one";dstFactor="one-minus-src-alpha";operation="add"] expected: @@ -5869,6 +5875,8 @@ if os == "win" and not debug: [PASS, FAIL] [:component="color";srcFactor="one";dstFactor="src-alpha"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one";dstFactor="src-alpha";operation="add"] expected: @@ -5884,7 +5892,7 @@ [:component="color";srcFactor="one";dstFactor="src-alpha-saturated"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one";dstFactor="src-alpha-saturated";operation="add"] expected: @@ -6866,7 +6874,8 @@ [:component="color";srcFactor="one-minus-src";dstFactor="one-minus-constant"] expected: if os == "linux": [TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one-minus-src";dstFactor="one-minus-constant";operation="add"] expected: @@ -7002,6 +7011,7 @@ [:component="color";srcFactor="one-minus-src";dstFactor="zero"] expected: if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="one-minus-src";dstFactor="zero";operation="add"] expected: @@ -7079,6 +7089,7 @@ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="one"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7158,6 +7169,7 @@ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-src"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7179,6 +7191,7 @@ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="one-minus-src-alpha"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7200,6 +7213,7 @@ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="src"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7221,6 +7235,7 @@ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="src-alpha"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7263,6 +7278,7 @@ [:component="color";srcFactor="one-minus-src-alpha";dstFactor="zero"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7285,6 +7301,7 @@ expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="src";dstFactor="constant";operation="add"] expected: @@ -7300,7 +7317,7 @@ [:component="color";srcFactor="src";dstFactor="dst"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="src";dstFactor="dst";operation="add"] expected: @@ -7332,7 +7349,7 @@ [:component="color";srcFactor="src";dstFactor="one"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="src";dstFactor="one";operation="add"] expected: @@ -7348,7 +7365,9 @@ [:component="color";srcFactor="src";dstFactor="one-minus-constant"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="src";dstFactor="one-minus-constant";operation="add"] expected: @@ -7364,7 +7383,7 @@ [:component="color";srcFactor="src";dstFactor="one-minus-dst"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="src";dstFactor="one-minus-dst";operation="add"] expected: @@ -7397,7 +7416,7 @@ [:component="color";srcFactor="src";dstFactor="one-minus-src"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="src";dstFactor="one-minus-src";operation="add"] expected: @@ -7413,7 +7432,7 @@ [:component="color";srcFactor="src";dstFactor="one-minus-src-alpha"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="src";dstFactor="one-minus-src-alpha";operation="add"] expected: @@ -7429,7 +7448,7 @@ [:component="color";srcFactor="src";dstFactor="src"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="src";dstFactor="src";operation="add"] expected: @@ -7445,7 +7464,7 @@ [:component="color";srcFactor="src";dstFactor="src-alpha"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="src";dstFactor="src-alpha";operation="add"] expected: @@ -7478,7 +7497,7 @@ [:component="color";srcFactor="src";dstFactor="zero"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:component="color";srcFactor="src";dstFactor="zero";operation="add"] expected: @@ -7495,6 +7514,7 @@ [:component="color";srcFactor="src-alpha";dstFactor="constant"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7578,6 +7598,7 @@ [:component="color";srcFactor="src-alpha";dstFactor="one-minus-constant"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7720,7 +7741,7 @@ [:component="color";srcFactor="src-alpha";dstFactor="src-alpha-saturated"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth/cts.https.html.ini index 326ae321967c..6e99c23f88fd 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth/cts.https.html.ini @@ -137,6 +137,7 @@ [:format="depth24plus";depthCompare="greater";depthClearValue=0] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -216,11 +217,13 @@ [:format="depth24plus";depthCompare="never";depthClearValue=0.5001] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus";depthCompare="never";depthClearValue=1] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus";depthCompare="not-equal";depthClearValue=0] @@ -412,25 +415,30 @@ [:format="depth32float";depthCompare="always";depthClearValue=0] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="always";depthClearValue=0.5001] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="always";depthClearValue=1] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="equal";depthClearValue=0] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="equal";depthClearValue=0.5001] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="equal";depthClearValue=1] expected: @@ -439,31 +447,38 @@ [:format="depth32float";depthCompare="greater";depthClearValue=0] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="greater";depthClearValue=0.5001] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="greater";depthClearValue=1] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="greater-equal";depthClearValue=0] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="greater-equal";depthClearValue=0.5001] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="greater-equal";depthClearValue=1] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="less";depthClearValue=0] expected: @@ -504,14 +519,18 @@ [:format="depth32float";depthCompare="not-equal";depthClearValue=0] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="not-equal";depthClearValue=0.5001] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float";depthCompare="not-equal";depthClearValue=1] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";depthCompare="always";depthClearValue=0] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth_clip_clamp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth_clip_clamp/cts.https.html.ini index 83fbff2db8df..859a686b8e24 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth_clip_clamp/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/depth_clip_clamp/cts.https.html.ini @@ -76,103 +76,121 @@ [:format="depth24plus";unclippedDepth=false;writeDepth=false;multisampled=false] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus";unclippedDepth=false;writeDepth=false;multisampled=true] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus";unclippedDepth=false;writeDepth=true;multisampled=false] expected: if os == "win": [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="depth24plus";unclippedDepth=false;writeDepth=true;multisampled=true] expected: if os == "win": [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="depth24plus";unclippedDepth=true;writeDepth=false;multisampled=false] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus";unclippedDepth=true;writeDepth=false;multisampled=true] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus";unclippedDepth=true;writeDepth=true;multisampled=false] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus";unclippedDepth=true;writeDepth=true;multisampled=true] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth="_undef_";writeDepth=false;multisampled=false] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth="_undef_";writeDepth=false;multisampled=true] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth="_undef_";writeDepth=true;multisampled=false] expected: if os == "win": [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth="_undef_";writeDepth=true;multisampled=true] expected: if os == "win": [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth=false;writeDepth=false;multisampled=false] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth=false;writeDepth=false;multisampled=true] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth=false;writeDepth=true;multisampled=false] expected: if os == "win": [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth=false;writeDepth=true;multisampled=true] expected: if os == "win": [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth=true;writeDepth=false;multisampled=false] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth=true;writeDepth=false;multisampled=true] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth=true;writeDepth=true;multisampled=false] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";unclippedDepth=true;writeDepth=true;multisampled=true] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth32float";unclippedDepth="_undef_";writeDepth=false;multisampled=false] @@ -230,14 +248,13 @@ [:format="depth32float-stencil8";unclippedDepth="_undef_";writeDepth=false;multisampled=false] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";unclippedDepth="_undef_";writeDepth=false;multisampled=true] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";unclippedDepth="_undef_";writeDepth=true;multisampled=false] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/draw/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/draw/cts.https.html.ini index 056b5e6f87dd..d30760552000 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/draw/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/draw/cts.https.html.ini @@ -33,6 +33,7 @@ [:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9] expected: if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, FAIL] [:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0] expected: @@ -45,6 +46,7 @@ [:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, FAIL] [:first=0;count=0;first_instance=0;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9] expected: @@ -77,10 +79,12 @@ [:first=0;count=0;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and not debug: [PASS, FAIL] [:first=0;count=0;first_instance=0;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, FAIL] [:first=0;count=0;first_instance=0;instance_count=1;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"] expected: FAIL @@ -91,14 +95,17 @@ [:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, FAIL] [:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, FAIL] [:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0] expected: if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, FAIL] [:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9] expected: @@ -107,10 +114,12 @@ [:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, FAIL] [:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, FAIL] [:first=0;count=0;first_instance=0;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0] expected: @@ -189,229 +198,213 @@ [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:first=0;count=0;first_instance=0;instance_count=4;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:first=0;count=0;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=false;indirect=false;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:first=0;count=0;first_instance=2;instance_count=0;indexed=false;indirect=true;vertex_buffer_offset=32;index_buffer_offset="_undef_";base_vertex="_undef_"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=false;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=0] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=0;index_buffer_offset=16;base_vertex=9] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=0] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=0;base_vertex=9] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=0] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=0;indexed=true;indirect=true;vertex_buffer_offset=32;index_buffer_offset=16;base_vertex=9] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=1;indexed=false;indirect=false;vertex_buffer_offset=0;index_buffer_offset="_undef_";base_vertex="_undef_"] @@ -440,13 +433,15 @@ [:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=0] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:first=0;count=0;first_instance=2;instance_count=1;indexed=true;indirect=false;vertex_buffer_offset=0;index_buffer_offset=0;base_vertex=9] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -4934,82 +4929,85 @@ [:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="float32";step_mode="_undef_"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="float32";step_mode="instance"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="float32";step_mode="vertex"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="uint32";step_mode="_undef_"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="uint32";step_mode="instance"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=1;vertex_format="uint32";step_mode="vertex"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="float32";step_mode="_undef_"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="float32";step_mode="instance"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="float32";step_mode="mixed"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="float32";step_mode="vertex"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="uint32";step_mode="_undef_"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="uint32";step_mode="instance"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="uint32";step_mode="mixed"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=4;vertex_format="uint32";step_mode="vertex"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="float32";step_mode="_undef_"] @@ -5039,7 +5037,7 @@ [:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="uint32";step_mode="_undef_"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=16;vertex_buffer_count=8;vertex_format="uint32";step_mode="instance"] @@ -5199,20 +5197,25 @@ [:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="float32";step_mode="_undef_"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="float32";step_mode="instance"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="float32";step_mode="mixed"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="float32";step_mode="vertex"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="uint32";step_mode="_undef_"] @@ -5222,14 +5225,17 @@ [:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="uint32";step_mode="instance"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="uint32";step_mode="mixed"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:vertex_attribute_count=8;vertex_buffer_count=8;vertex_format="uint32";step_mode="vertex"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:api,operation,rendering,draw:vertex_attributes,formats:*] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/stencil/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/stencil/cts.https.html.ini index dfad3976884f..07bd2bfa0805 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/stencil/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/rendering/stencil/cts.https.html.ini @@ -78,61 +78,67 @@ [:format="depth24plus-stencil8";stencilCompare="never";stencilRefValue=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";stencilCompare="never";stencilRefValue=1] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";stencilCompare="never";stencilRefValue=2] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";stencilCompare="not-equal";stencilRefValue=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";stencilCompare="not-equal";stencilRefValue=1] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";stencilCompare="not-equal";stencilRefValue=2] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";stencilCompare="always";stencilRefValue=0] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";stencilCompare="always";stencilRefValue=1] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";stencilCompare="always";stencilRefValue=2] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";stencilCompare="equal";stencilRefValue=0] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";stencilCompare="equal";stencilRefValue=1] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";stencilCompare="equal";stencilRefValue=2] @@ -215,26 +221,21 @@ [:format="depth32float-stencil8";stencilCompare="never";stencilRefValue=0] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";stencilCompare="never";stencilRefValue=1] - expected: - if os == "win": [PASS, FAIL] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac": [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";stencilCompare="never";stencilRefValue=2] - expected: - if os == "win": [PASS, FAIL] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac": [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";stencilCompare="not-equal";stencilRefValue=0] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -348,6 +349,8 @@ [cts.https.html?q=webgpu:api,operation,rendering,stencil:stencil_depthFailOp_operation:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:format="depth24plus-stencil8";depthFailOp="decrement-clamp";initialStencil=0] expected: if os == "win": [PASS, FAIL] @@ -403,22 +406,27 @@ [:format="depth32float-stencil8";depthFailOp="decrement-clamp";initialStencil=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";depthFailOp="decrement-clamp";initialStencil=1] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";depthFailOp="decrement-wrap";initialStencil=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";depthFailOp="decrement-wrap";initialStencil=1] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";depthFailOp="decrement-wrap";initialStencil=2] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";depthFailOp="increment-clamp";initialStencil=1] expected: @@ -431,10 +439,12 @@ [:format="depth32float-stencil8";depthFailOp="increment-wrap";initialStencil=1] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";depthFailOp="increment-wrap";initialStencil=255] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";depthFailOp="invert";initialStencil=240] expected: @@ -454,6 +464,9 @@ [cts.https.html?q=webgpu:api,operation,rendering,stencil:stencil_failOp_operation:*] + expected: + if os == "linux" and not debug: [OK, TIMEOUT] + if os == "mac" and debug: [OK, TIMEOUT] [:format="depth24plus-stencil8";failOp="decrement-clamp";initialStencil=0] expected: if os == "win": [PASS, FAIL] @@ -517,14 +530,19 @@ [:format="depth32float-stencil8";failOp="decrement-wrap";initialStencil=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";failOp="decrement-wrap";initialStencil=1] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";failOp="decrement-wrap";initialStencil=2] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";failOp="increment-clamp";initialStencil=1] expected: @@ -612,6 +630,8 @@ [cts.https.html?q=webgpu:api,operation,rendering,stencil:stencil_passOp_operation:*] + expected: + if os == "linux" and not debug: [OK, TIMEOUT] [:format="depth24plus-stencil8";passOp="decrement-clamp";initialStencil=0] expected: if os == "win": [PASS, FAIL] @@ -671,6 +691,7 @@ [:format="depth32float-stencil8";passOp="decrement-wrap";initialStencil=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="depth32float-stencil8";passOp="decrement-wrap";initialStencil=1] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/resource_init/texture_zero/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/resource_init/texture_zero/cts.https.html.ini index 03ef25fd38d4..0df275a108fe 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/resource_init/texture_zero/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/resource_init/texture_zero/cts.https.html.ini @@ -56,6 +56,7 @@ [:dimension="1d";readMethod="CopyToBuffer";format="rg11b10ufloat"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToBuffer";format="rg16float"] expected: @@ -98,15 +99,21 @@ if os == "win": [PASS, FAIL] [:dimension="1d";readMethod="CopyToBuffer";format="rgb10a2uint"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:dimension="1d";readMethod="CopyToBuffer";format="rgb10a2unorm"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToBuffer";format="rgb9e5ufloat"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToBuffer";format="rgba16float"] expected: @@ -123,14 +130,17 @@ [:dimension="1d";readMethod="CopyToBuffer";format="rgba32float"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToBuffer";format="rgba32sint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToBuffer";format="rgba32uint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToBuffer";format="rgba8sint"] expected: @@ -155,31 +165,31 @@ [:dimension="1d";readMethod="CopyToTexture";format="bgra8unorm"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="bgra8unorm-srgb"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="r16float"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="r16sint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="r16uint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="r32float"] @@ -209,6 +219,7 @@ [:dimension="1d";readMethod="CopyToTexture";format="r8snorm"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="r8uint"] expected: @@ -219,6 +230,7 @@ [:dimension="1d";readMethod="CopyToTexture";format="r8unorm"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="rg11b10ufloat"] expected: @@ -235,13 +247,13 @@ [:dimension="1d";readMethod="CopyToTexture";format="rg16sint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="rg16uint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="rg32float"] @@ -289,11 +301,7 @@ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="rgb10a2uint"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="rgb10a2unorm"] expected: @@ -349,8 +357,8 @@ [:dimension="1d";readMethod="CopyToTexture";format="rgba8sint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";readMethod="CopyToTexture";format="rgba8snorm"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html.ini index 5743152946fc..09f1bea29562 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_only/cts.https.html.ini @@ -64,7 +64,8 @@ [:format="bgra8unorm";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -76,11 +77,7 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:format="bgra8unorm";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:format="r32float";shaderStage="compute";dimension="1d";depthOrArrayLayers=1] expected: [FAIL, TIMEOUT, NOTRUN] @@ -1007,16 +1004,14 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:format="rgba8sint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2] expected: if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:format="rgba8sint";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1] expected: @@ -1089,61 +1084,137 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:format="rgba8snorm";shaderStage="compute";dimension="1d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="compute";dimension="2d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="compute";dimension="2d";depthOrArrayLayers=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="compute";dimension="3d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="compute";dimension="3d";depthOrArrayLayers=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="fragment";dimension="1d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="fragment";dimension="2d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="fragment";dimension="2d";depthOrArrayLayers=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="fragment";dimension="3d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="fragment";dimension="3d";depthOrArrayLayers=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="vertex";dimension="1d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="vertex";dimension="2d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="vertex";dimension="2d";depthOrArrayLayers=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="vertex";dimension="3d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8snorm";shaderStage="vertex";dimension="3d";depthOrArrayLayers=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8uint";shaderStage="compute";dimension="1d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8uint";shaderStage="compute";dimension="2d";depthOrArrayLayers=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=1] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:format="rgba8uint";shaderStage="compute";dimension="3d";depthOrArrayLayers=2] expected: @@ -1225,7 +1296,8 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:format="rgba8unorm";shaderStage="compute";dimension="1d";depthOrArrayLayers=1] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html.ini index 8a931ecfd13e..74ac5385e240 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/storage_texture/read_write/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:api,operation,storage_texture,read_write:basic:*] + expected: + if os == "mac": SKIP [:format="r32float";shaderStage="compute";textureDimension="1d";depthOrArrayLayers=1] expected: if os == "win": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/texture_view/write/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/texture_view/write/cts.https.html.ini index 332b91014d01..8bd0187fe7b1 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/texture_view/write/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/texture_view/write/cts.https.html.ini @@ -131,21 +131,21 @@ expected: if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="render-pass-store";format="r32sint";sampleCount=1] expected: if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="render-pass-store";format="r32uint";sampleCount=1] expected: if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="render-pass-store";format="r8sint";sampleCount=1] @@ -202,14 +202,14 @@ expected: if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="render-pass-store";format="rg32uint";sampleCount=1] expected: if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="render-pass-store";format="rg8sint";sampleCount=1] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/correctness/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/correctness/cts.https.html.ini index b33875fc632a..50d394582402 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/correctness/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/correctness/cts.https.html.ini @@ -73,7 +73,8 @@ [:format="sint8x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] [:format="sint8x4"] expected: @@ -94,22 +95,26 @@ [:format="snorm8x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="snorm8x4"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="uint16x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="uint16x4"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="uint32"] expected: @@ -169,7 +174,8 @@ [:format="unorm8x4"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, FAIL] + if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:api,operation,vertex_state,correctness:buffers_with_varying_step_mode:*] @@ -390,51 +396,45 @@ [:format="float16x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="float16x4"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="float32"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="float32x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="float32x3"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="float32x4"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="sint16x2"] expected: if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="sint16x4"] expected: if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="sint32"] expected: @@ -473,14 +473,12 @@ [:format="snorm16x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="snorm16x4"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="snorm8x2"] expected: @@ -496,20 +494,20 @@ [:format="uint16x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="uint16x4"] expected: if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="uint32"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="uint32x2"] expected: @@ -551,14 +549,12 @@ [:format="unorm16x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="unorm16x4"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="unorm8x2"] expected: @@ -597,7 +593,8 @@ [:format="float32x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] if os == "mac": FAIL [:format="float32x3"] @@ -813,14 +810,12 @@ [:format="sint16x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="sint16x4"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="sint32"] expected: @@ -878,25 +873,24 @@ [:format="snorm8x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="snorm8x4"] expected: if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="uint16x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="uint16x4"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="uint32"] expected: @@ -940,15 +934,13 @@ [:format="unorm16x2"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="unorm16x4"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:format="unorm8x2"] expected: @@ -960,13 +952,12 @@ expected: if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:api,operation,vertex_state,correctness:vertex_buffer_used_multiple_times_interleaved:*] expected: if os == "win" and debug: TIMEOUT - if os == "linux" and debug: TIMEOUT if os == "linux" and not debug: [OK, TIMEOUT] [:format="float16x2"] expected: @@ -1010,6 +1001,7 @@ [:format="sint32"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] @@ -1121,19 +1113,22 @@ [cts.https.html?q=webgpu:api,operation,vertex_state,correctness:vertex_buffer_used_multiple_times_overlapped:*] expected: - if os == "win" and debug: TIMEOUT + if os == "win" and debug: [OK, TIMEOUT] if os == "linux": [OK, TIMEOUT] [:format="float16x2"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:format="float16x4"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:format="float32"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:format="float32x2"] expected: @@ -1193,10 +1188,12 @@ [:format="snorm16x2"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:format="snorm16x4"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:format="snorm8x2"] expected: @@ -1252,10 +1249,12 @@ [:format="unorm16x2"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:format="unorm16x4"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:format="unorm8x2"] expected: @@ -1613,7 +1612,8 @@ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:format="uint16x4";shaderComponentCount=3] expected: @@ -1728,8 +1728,7 @@ if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:format="unorm16x2";shaderComponentCount=3] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/index_format/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/index_format/cts.https.html.ini index 547392b717c2..7022cdce1cd5 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/index_format/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/operation/vertex_state/index_format/cts.https.html.ini @@ -86,4 +86,4 @@ [:indexFormat="uint32";primitiveTopology="triangle-strip"] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and not debug: [PASS, FAIL] + if os == "linux": [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/create/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/create/cts.https.html.ini index 6f9d996e24ff..e1e870236033 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/create/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/create/cts.https.html.ini @@ -46,11 +46,13 @@ [:usage1=128;usage2=0] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=128;usage2=1] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=128;usage2=128] @@ -62,11 +64,13 @@ [:usage1=128;usage2=16] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=128;usage2=2] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=128;usage2=256] @@ -78,6 +82,7 @@ [:usage1=128;usage2=32] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=128;usage2=32768] @@ -89,6 +94,7 @@ [:usage1=128;usage2=4] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=128;usage2=512] @@ -100,11 +106,13 @@ [:usage1=128;usage2=64] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=128;usage2=8] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=16;usage2=0] @@ -224,7 +232,7 @@ [:usage1=256;usage2=32768] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=256;usage2=4] @@ -236,7 +244,7 @@ [:usage1=256;usage2=512] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=256;usage2=64] @@ -290,13 +298,14 @@ [:usage1=32768;usage2=128] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=32768;usage2=16] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -309,13 +318,14 @@ [:usage1=32768;usage2=256] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=32768;usage2=32] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -334,19 +344,21 @@ [:usage1=32768;usage2=512] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=32768;usage2=64] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=32768;usage2=8] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -361,11 +373,13 @@ [:usage1=32;usage2=128] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=32;usage2=16] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=32;usage2=2] expected: @@ -374,33 +388,40 @@ [:usage1=32;usage2=256] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=32;usage2=32] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=32;usage2=32768] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=32;usage2=4] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=32;usage2=512] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=32;usage2=64] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=32;usage2=8] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=4;usage2=0] @@ -429,13 +450,13 @@ [:usage1=512;usage2=0] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=512;usage2=1] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=512;usage2=128] @@ -447,13 +468,13 @@ [:usage1=512;usage2=16] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=512;usage2=2] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=512;usage2=256] @@ -477,7 +498,7 @@ [:usage1=512;usage2=4] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=512;usage2=512] @@ -495,67 +516,79 @@ [:usage1=512;usage2=8] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=0] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=1] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=128] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=16] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=2] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=256] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=32] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=32768] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=4] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=512] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=64] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:usage1=64;usage2=8] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:usage1=8;usage2=0] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/mapping/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/mapping/cts.https.html.ini index bd7d908f8223..937662d09532 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/mapping/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/buffer/mapping/cts.https.html.ini @@ -21,6 +21,8 @@ [cts.https.html?q=webgpu:api,validation,buffer,mapping:getMappedRange,offsetAndSizeAlignment,mapped:*] + expected: + if debug: CRASH [:mapMode=1] expected: FAIL @@ -29,6 +31,8 @@ [cts.https.html?q=webgpu:api,validation,buffer,mapping:getMappedRange,offsetAndSizeAlignment,mappedAtCreation:*] + expected: + if debug: CRASH [:] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/texture_formats/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/texture_formats/cts.https.html.ini index b0f3403330cc..56ea4f3c25d9 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/texture_formats/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/features/texture_formats/cts.https.html.ini @@ -1,6 +1,6 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,features,texture_formats:canvas_configuration:*] expected: - if os == "linux": TIMEOUT + if os == "linux": [OK, TIMEOUT] if os == "mac": TIMEOUT [:format="astc-10x10-unorm";canvasType="offscreen";enable_required_feature=false] expected: @@ -53,49 +53,49 @@ [:format="astc-10x5-unorm";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x5-unorm";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x5-unorm";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x5-unorm";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x5-unorm-srgb";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x5-unorm-srgb";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x6-unorm";canvasType="offscreen";enable_required_feature=false] @@ -107,19 +107,19 @@ [:format="astc-10x6-unorm";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x6-unorm";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x6-unorm";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-10x6-unorm-srgb";canvasType="offscreen";enable_required_feature=false] @@ -434,7 +434,7 @@ [:format="astc-6x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-6x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true] @@ -458,193 +458,193 @@ [:format="astc-6x6-unorm";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-6x6-unorm";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-6x6-unorm";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-6x6-unorm";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-6x6-unorm-srgb";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-6x6-unorm-srgb";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-6x6-unorm-srgb";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-6x6-unorm-srgb";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x5-unorm";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x5-unorm";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x5-unorm";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x5-unorm";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x5-unorm-srgb";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x5-unorm-srgb";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x6-unorm";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x6-unorm";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x6-unorm";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x6-unorm";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x6-unorm-srgb";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x6-unorm-srgb";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x6-unorm-srgb";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x6-unorm-srgb";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x8-unorm";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x8-unorm";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x8-unorm";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x8-unorm";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x8-unorm-srgb";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x8-unorm-srgb";canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x8-unorm-srgb";canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="astc-8x8-unorm-srgb";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="bc1-rgba-unorm";canvasType="offscreen";enable_required_feature=false] @@ -877,10 +877,12 @@ [:format="eac-rg11snorm";canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="eac-rg11unorm";canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="eac-rg11unorm";canvasType="offscreen";enable_required_feature=true] expected: @@ -1048,121 +1050,121 @@ [:viewFormats=["astc-10x5-unorm"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x5-unorm"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x5-unorm"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x5-unorm"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x6-unorm"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x6-unorm"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x6-unorm"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x6-unorm"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x8-unorm"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x8-unorm"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x8-unorm"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x8-unorm"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-10x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] @@ -1186,7 +1188,7 @@ [:viewFormats=["astc-10x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-12x10-unorm"\];canvasType="offscreen";enable_required_feature=false] @@ -1348,6 +1350,7 @@ [:viewFormats=["astc-5x4-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-5x4-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] @@ -1368,61 +1371,73 @@ [:viewFormats=["astc-5x5-unorm"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-5x5-unorm"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-5x5-unorm"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-5x5-unorm"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-6x5-unorm"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-6x5-unorm"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-6x5-unorm"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-6x5-unorm"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] @@ -1434,16 +1449,19 @@ [:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-6x6-unorm"\];canvasType="offscreen";enable_required_feature=false] @@ -1569,19 +1587,19 @@ [:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] @@ -1593,49 +1611,49 @@ [:viewFormats=["astc-8x8-unorm"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-8x8-unorm"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-8x8-unorm"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-8x8-unorm"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:viewFormats=["bc1-rgba-unorm","bgra8unorm"\];canvasType="offscreen";enable_required_feature=false] @@ -1976,18 +1994,22 @@ [:viewFormats=["eac-rg11snorm"\];canvasType="onscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["eac-rg11unorm"\];canvasType="offscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["eac-rg11unorm"\];canvasType="offscreen";enable_required_feature=true] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["eac-rg11unorm"\];canvasType="onscreen";enable_required_feature=false] expected: if os == "win" and debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:viewFormats=["eac-rg11unorm"\];canvasType="onscreen";enable_required_feature=true] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroups/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroups/cts.https.html.ini index 742a4270b2e6..0a5193ef83d2 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroups/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroups/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindGroups:createPipeline,at_over:*] + expected: + if os == "linux" and not debug: [OK, CRASH] [:limitTest="atDefault";testValueName="atLimit";createPipelineType="createComputePipeline";async=false] expected: if os == "win" and debug: [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html.ini index dcb15503d1d9..74cb080dd849 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindGroupsPlusVertexBuffers/cts.https.html.ini @@ -74,7 +74,9 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindGroupsPlusVertexBuffers:draw,at_over:*] expected: - if os == "win": TIMEOUT + if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [OK, TIMEOUT] + if os == "linux" and debug: [OK, TIMEOUT] [:limitTest="atDefault";testValueName="atLimit";encoderType="render"] expected: FAIL @@ -87,15 +89,13 @@ [:limitTest="atMaximum";testValueName="atLimit";encoderType="render"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": FAIL if os == "mac": FAIL [:limitTest="atMaximum";testValueName="atLimit";encoderType="renderBundle"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": FAIL if os == "mac": FAIL @@ -108,6 +108,7 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";encoderType="render"] expected: FAIL @@ -118,26 +119,32 @@ [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";encoderType="render"] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";encoderType="renderBundle"] + expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";encoderType="render"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";encoderType="renderBundle"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";encoderType="render"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";encoderType="renderBundle"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";encoderType="render"] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindingsPerBindGroup/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindingsPerBindGroup/cts.https.html.ini index 667ef9df6624..c6aa3dbc6d3c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindingsPerBindGroup/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxBindingsPerBindGroup/cts.https.html.ini @@ -33,6 +33,8 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxBindingsPerBindGroup:createPipeline,at_over:*] + expected: + if os == "linux" and debug: [OK, CRASH] [:limitTest="atDefault";testValueName="atLimit";createPipelineType="createComputePipeline";async=false] expected: if os == "win": [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample/cts.https.html.ini index a3a47bb1adb1..d4583c4f03ba 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxColorAttachmentBytesPerSample/cts.https.html.ini @@ -2,8 +2,8 @@ expected: if os == "win" and debug: [OK, TIMEOUT, CRASH] if os == "win" and not debug: [OK, TIMEOUT] - if os == "linux" and debug: [OK, TIMEOUT] - if os == "mac" and debug: [OK, TIMEOUT] + if os == "linux": [OK, TIMEOUT] + if os == "mac": [OK, TIMEOUT] [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: if os == "win": [PASS, FAIL] @@ -172,22 +172,20 @@ [:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"] @@ -200,13 +198,12 @@ [:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] @@ -216,7 +213,7 @@ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"] @@ -226,32 +223,32 @@ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] @@ -319,121 +316,121 @@ [:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="r8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] @@ -512,7 +509,7 @@ expected: if os == "win" and debug: TIMEOUT if os == "win" and not debug: [OK, TIMEOUT] - if os == "linux" and debug: [OK, TIMEOUT] + if os == "linux": [OK, TIMEOUT] if os == "mac" and debug: TIMEOUT if os == "mac" and not debug: [OK, TIMEOUT] [:limitTest="atDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] @@ -680,43 +677,28 @@ [:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:limitTest="atMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -804,7 +786,7 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rg16float"] @@ -826,6 +808,7 @@ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=1;interleaveFormat="rgba8unorm"] expected: @@ -838,101 +821,101 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg16float"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rg8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba16float"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";sampleCount=4;interleaveFormat="rgba8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg16float"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rg8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba16float"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=1;interleaveFormat="rgba8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="r8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rg8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";sampleCount=4;interleaveFormat="rgba8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";sampleCount=1;interleaveFormat="r8unorm"] expected: @@ -1426,8 +1409,7 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -1470,141 +1452,131 @@ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rg8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="r8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rg16float"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rg8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rgba16float"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";async=true;sampleCount=4;interleaveFormat="rgba8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="r8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg16float"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rg8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba16float"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=1;interleaveFormat="rgba8unorm"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="r8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="r8unorm"] @@ -1617,11 +1589,7 @@ expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rgba16float"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";async=true;sampleCount=1;interleaveFormat="rgba8unorm"] expected: [FAIL, TIMEOUT, NOTRUN] @@ -2034,7 +2002,8 @@ [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg16float"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rg8unorm"] @@ -2045,7 +2014,8 @@ [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba16float"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";async=false;sampleCount=4;interleaveFormat="rgba8unorm"] @@ -2109,11 +2079,8 @@ [:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rg8unorm"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rgba16float"] expected: @@ -2125,8 +2092,5 @@ [:limitTest="underDefault";testValueName="overLimit";async=true;sampleCount=4;interleaveFormat="rgba8unorm"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY/cts.https.html.ini index 13e87e52b184..5970b764d07f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupSizeY/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxComputeWorkgroupSizeY:createComputePipeline,at_over:*] + expected: + if os == "mac": SKIP [:limitTest="atDefault";testValueName="atLimit";async=false] expected: FAIL @@ -88,6 +90,8 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxComputeWorkgroupSizeY:validate,maxComputeInvocationsPerWorkgroup:*] + expected: + if os == "mac": SKIP [:] expected: if os == "win": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize/cts.https.html.ini index dd83abc7120b..a196f4945bc0 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupStorageSize/cts.https.html.ini @@ -1,9 +1,10 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxComputeWorkgroupStorageSize:createComputePipeline,at_over:*] expected: - if os == "win": [OK, TIMEOUT] + if os == "win" and debug: [OK, TIMEOUT] + if os == "win" and not debug: [TIMEOUT, CRASH] if os == "linux" and debug: [OK, TIMEOUT] - if os == "linux" and not debug: TIMEOUT - if os == "mac" and debug: [OK, TIMEOUT] + if os == "linux" and not debug: [TIMEOUT, CRASH] + if os == "mac" and debug: [TIMEOUT, CRASH] if os == "mac" and not debug: TIMEOUT [:limitTest="atDefault";testValueName="atLimit";async=false;wgslType="S1"] @@ -270,13 +271,19 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="f32"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="i32"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf16%3E"] expected: @@ -285,11 +292,7 @@ if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat2x2%3Cf32%3E"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat2x3%3Cf16%3E"] expected: @@ -319,11 +322,7 @@ if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat3x2%3Cf32%3E"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat3x3%3Cf16%3E"] expected: @@ -337,7 +336,7 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat3x4%3Cf16%3E"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -353,11 +352,7 @@ if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat4x2%3Cf32%3E"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat4x3%3Cf16%3E"] expected: @@ -371,7 +366,7 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="mat4x4%3Cf16%3E"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -381,8 +376,10 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="u32"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec2%3Cf16%3E"] expected: @@ -391,18 +388,24 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec2%3Cf32%3E"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec2%3Ci32%3E"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec2%3Cu32%3E"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec3%3Cf16%3E"] expected: @@ -411,45 +414,43 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec3%3Cf32%3E"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec3%3Ci32%3E"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec3%3Cu32%3E"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec4%3Cf32%3E"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec4%3Ci32%3E"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;wgslType="vec4%3Cu32%3E"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;wgslType="S1"] expected: [FAIL, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension/cts.https.html.ini index cba0bbf8256d..90769fc549d2 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxComputeWorkgroupsPerDimension/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxComputeWorkgroupsPerDimension:dispatchWorkgroups,at_over:*] + expected: + if os == "linux" and not debug: [OK, CRASH] [:limitTest="atDefault";testValueName="atLimit";pipelineType="createComputePipeline";axis=0] [:limitTest="atDefault";testValueName="atLimit";pipelineType="createComputePipeline";axis=1] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents/cts.https.html.ini index c51b406f38c9..8af0a61e088d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxInterStageShaderComponents/cts.https.html.ini @@ -344,226 +344,173 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=false;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;pointList=true;frontFacing=true;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=true] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=false] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=false;sampleMaskOut=true] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=false] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=false;sampleMaskIn=true;sampleMaskOut=true] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=false] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=false;sampleMaskOut=true] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;pointList=false;frontFacing=false;sampleIndex=true;sampleMaskIn=true;sampleMaskOut=false] expected: [FAIL, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage/cts.https.html.ini index d8bf48efaf65..edf613454661 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSampledTexturesPerShaderStage/cts.https.html.ini @@ -464,8 +464,7 @@ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="backward"] expected: - if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -478,8 +477,7 @@ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"] expected: - if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -491,8 +489,7 @@ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="forward"] expected: - if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -1009,6 +1006,7 @@ [:limitTest="underDefault";testValueName="atLimit";visibility=7;order="backward"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";visibility=7;order="forward"] expected: @@ -1017,28 +1015,34 @@ [:limitTest="underDefault";testValueName="atLimit";visibility=7;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=1;order="backward"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=1;order="forward"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=1;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=2;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=2;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=2;order="shiftByHalf"] expected: @@ -1087,6 +1091,7 @@ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=5;order="forward"] expected: @@ -1099,6 +1104,7 @@ if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=6;order="backward"] expected: @@ -1147,7 +1153,7 @@ expected: if os == "win": [OK, TIMEOUT] if os == "linux" and debug: [OK, TIMEOUT] - if os == "linux" and not debug: TIMEOUT + if os == "linux" and not debug: [TIMEOUT, CRASH] if os == "mac" and debug: [OK, TIMEOUT] if os == "mac" and not debug: TIMEOUT [:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] @@ -1292,7 +1298,8 @@ [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"] @@ -1416,48 +1423,42 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -1496,16 +1497,14 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -1560,93 +1559,95 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] expected: [FAIL, TIMEOUT, NOTRUN] @@ -1724,16 +1725,14 @@ [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -1762,11 +1761,7 @@ expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: [FAIL, TIMEOUT, NOTRUN] @@ -1775,11 +1770,7 @@ expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"] expected: @@ -1803,18 +1794,10 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] expected: @@ -5088,98 +5071,98 @@ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -5602,7 +5585,8 @@ [:limitTest="underDefault";testValueName="atLimit";visibility=6;order="backward"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";visibility=6;order="forward"] expected: @@ -5610,22 +5594,23 @@ [:limitTest="underDefault";testValueName="atLimit";visibility=6;order="shiftByHalf"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";visibility=7;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";visibility=7;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";visibility=7;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=1;order="backward"] expected: @@ -5724,7 +5709,8 @@ if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";visibility=5;order="shiftByHalf"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage/cts.https.html.ini index 0196e1397d20..49188dc7562c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage/cts.https.html.ini @@ -431,215 +431,215 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="backward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="forward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="backward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="forward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="backward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="forward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="backward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="forward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=3;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="backward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="forward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=4;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=5;order="backward"] @@ -1067,7 +1067,7 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=3;order="forward"] expected: @@ -1079,85 +1079,85 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=4;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=4;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=4;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=5;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=5;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=5;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=6;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=6;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=6;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=7;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=7;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=7;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] @@ -1292,32 +1292,32 @@ [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"] expected: @@ -1382,12 +1382,12 @@ [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"] expected: @@ -1402,12 +1402,12 @@ [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"] expected: @@ -1442,48 +1442,42 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -1491,186 +1485,166 @@ expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -1695,126 +1669,98 @@ [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: [FAIL, TIMEOUT, NOTRUN] @@ -1823,46 +1769,22 @@ expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atMaximum";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] expected: @@ -5147,159 +5069,151 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=1;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=2;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=3;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=4;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=5;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="backward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="forward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="backward"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="forward"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"] expected: [FAIL, TIMEOUT, NOTRUN] @@ -5711,8 +5625,7 @@ [:limitTest="underDefault";testValueName="overLimit";visibility=1;order="shiftByHalf"] expected: - if os == "win" and debug: FAIL - if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -5726,8 +5639,7 @@ [:limitTest="underDefault";testValueName="overLimit";visibility=2;order="forward"] expected: - if os == "win" and debug: FAIL - if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -5799,55 +5711,48 @@ [:limitTest="underDefault";testValueName="overLimit";visibility=5;order="shiftByHalf"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";visibility=6;order="backward"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";visibility=6;order="forward"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";visibility=6;order="shiftByHalf"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";visibility=7;order="backward"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";visibility=7;order="forward"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";visibility=7;order="shiftByHalf"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage/cts.https.html.ini index 9ec0f191524c..770f68111ed4 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageBuffersPerShaderStage/cts.https.html.ini @@ -2017,7 +2017,7 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";visibility=7;type="storage";order="backward"] @@ -2036,21 +2036,21 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=1;type="read-only-storage";order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=1;type="read-only-storage";order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=1;type="storage";order="backward"] @@ -2069,60 +2069,60 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=2;type="read-only-storage";order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=2;type="read-only-storage";order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=2;type="storage";order="backward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=2;type="storage";order="forward"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=2;type="storage";order="shiftByHalf"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=3;type="read-only-storage";order="backward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=3;type="read-only-storage";order="forward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=3;type="read-only-storage";order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=3;type="storage";order="backward"] @@ -2140,13 +2140,13 @@ [:limitTest="underDefault";testValueName="overLimit";visibility=4;type="read-only-storage";order="backward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=4;type="read-only-storage";order="forward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=4;type="read-only-storage";order="shiftByHalf"] @@ -2158,19 +2158,19 @@ [:limitTest="underDefault";testValueName="overLimit";visibility=4;type="storage";order="backward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=4;type="storage";order="forward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=4;type="storage";order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="overLimit";visibility=5;type="read-only-storage";order="backward"] @@ -2679,14 +2679,16 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -2716,23 +2718,35 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: @@ -2784,8 +2798,11 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if debug: [FAIL, TIMEOUT, NOTRUN] - if not debug: FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] expected: @@ -7688,13 +7705,13 @@ [:limitTest="underDefault";testValueName="atLimit";visibility=2;type="storage";order="backward"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";visibility=2;type="storage";order="forward"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage/cts.https.html.ini index 30ac945acc8d..7aadd9683f2e 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxStorageTexturesPerShaderStage/cts.https.html.ini @@ -1,7 +1,8 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxStorageTexturesPerShaderStage:createBindGroupLayout,at_over:*] expected: if os == "win": [OK, TIMEOUT] - if os == "linux": [OK, TIMEOUT] + if os == "linux" and debug: [OK, TIMEOUT] + if os == "linux" and not debug: [OK, CRASH] if os == "mac" and debug: [OK, TIMEOUT] [:limitTest="atDefault";testValueName="atLimit";visibility=2;order="backward"] expected: @@ -454,7 +455,12 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxStorageTexturesPerShaderStage:createPipeline,at_over:*] - expected: [OK, TIMEOUT] + expected: + if os == "win" and debug: [OK, TIMEOUT] + if os == "win" and not debug: [TIMEOUT, CRASH] + if os == "linux": [OK, TIMEOUT] + if os == "mac" and debug: [TIMEOUT, CRASH] + if os == "mac" and not debug: [OK, TIMEOUT] [:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] expected: if os == "win": [PASS, FAIL] @@ -1623,7 +1629,8 @@ [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="underDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"] @@ -1693,11 +1700,8 @@ [:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"] expected: @@ -2154,16 +2158,19 @@ expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="forward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="atLimit";visibility=6;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="backward"] expected: @@ -2175,6 +2182,7 @@ expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="overMaximum";testValueName="overLimit";visibility=2;order="shiftByHalf"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage/cts.https.html.ini index 9d058eb82a9a..a35463e56f4d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxUniformBuffersPerShaderStage/cts.https.html.ini @@ -1010,7 +1010,8 @@ [:limitTest="underDefault";testValueName="overLimit";visibility=1;order="backward"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] [:limitTest="underDefault";testValueName="overLimit";visibility=1;order="forward"] expected: @@ -1018,7 +1019,8 @@ [:limitTest="underDefault";testValueName="overLimit";visibility=1;order="shiftByHalf"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] [:limitTest="underDefault";testValueName="overLimit";visibility=2;order="backward"] expected: @@ -1027,7 +1029,8 @@ [:limitTest="underDefault";testValueName="overLimit";visibility=2;order="forward"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] [:limitTest="underDefault";testValueName="overLimit";visibility=2;order="shiftByHalf"] expected: @@ -1116,7 +1119,7 @@ expected: if os == "win": [OK, TIMEOUT] if os == "linux" and debug: [OK, TIMEOUT] - if os == "linux" and not debug: TIMEOUT + if os == "linux" and not debug: [TIMEOUT, CRASH] if os == "mac" and debug: [OK, TIMEOUT] if os == "mac" and not debug: TIMEOUT [:limitTest="atDefault";testValueName="atLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] @@ -1241,138 +1244,164 @@ [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="compute";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="atLimit";async=true;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="compute";order="backward";bindGroupTest="differentGroups"] expected: @@ -1424,96 +1453,84 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertex";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -1539,14 +1556,16 @@ if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="forward";bindGroupTest="sameGroup"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleFragmentStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: @@ -1566,48 +1585,43 @@ [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="backward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="forward";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="differentGroups"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=false;bindingCombination="vertexAndFragmentWithPossibleVertexStageOverflow";order="shiftByHalf";bindGroupTest="sameGroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -1631,11 +1645,7 @@ expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="differentGroups"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="backward";bindGroupTest="sameGroup"] expected: @@ -1661,18 +1671,10 @@ if os == "mac" and not debug: FAIL [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="differentGroups"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="fragment";order="shiftByHalf";bindGroupTest="sameGroup"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="atDefault";testValueName="overLimit";async=true;bindingCombination="vertex";order="backward";bindGroupTest="differentGroups"] expected: @@ -4528,7 +4530,11 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxUniformBuffersPerShaderStage:createPipelineLayout,at_over:*] - expected: TIMEOUT + expected: + if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [OK, TIMEOUT] + if os == "linux": TIMEOUT + if os == "mac": TIMEOUT [:limitTest="atDefault";testValueName="atLimit";visibility=1;order="backward"] expected: if os == "win": [PASS, FAIL] @@ -4976,7 +4982,7 @@ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="backward"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="forward"] @@ -4988,18 +4994,14 @@ [:limitTest="betweenDefaultAndMaximum";testValueName="atLimit";visibility=7;order="shiftByHalf"] expected: if os == "win": [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="backward"] expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="forward"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:limitTest="betweenDefaultAndMaximum";testValueName="overLimit";visibility=1;order="shiftByHalf"] expected: [FAIL, TIMEOUT, NOTRUN] @@ -5488,7 +5490,8 @@ if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:limitTest="underDefault";testValueName="overLimit";visibility=6;order="shiftByHalf"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBufferArrayStride/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBufferArrayStride/cts.https.html.ini index d533f035c4cd..2f701190c72d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBufferArrayStride/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxVertexBufferArrayStride/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxVertexBufferArrayStride:createRenderPipeline,at_over:*] + expected: + if os == "mac": SKIP [:limitTest="atDefault";testValueName="atLimit";async=false] expected: if os == "mac": FAIL @@ -78,6 +80,8 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxVertexBufferArrayStride:validate:*] + expected: + if os == "mac": SKIP [:] expected: if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html.ini index 0328dde808d5..0f9998186776 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/compute_pipeline/cts.https.html.ini @@ -222,11 +222,11 @@ [cts.https.html?q=webgpu:api,validation,compute_pipeline:overrides,uninitialized:*] + expected: + if os == "win" and debug: [OK, CRASH] [:isAsync=false;constants={"c0":0,"c2":0,"c5":0,"c8":0,"c1":0}] - expected: FAIL [:isAsync=false;constants={"c0":0,"c2":0,"c5":0,"c8":0}] - expected: FAIL [:isAsync=false;constants={"c0":0,"c2":0,"c8":0}] expected: @@ -241,10 +241,8 @@ if os == "mac": FAIL [:isAsync=true;constants={"c0":0,"c2":0,"c5":0,"c8":0,"c1":0}] - expected: FAIL [:isAsync=true;constants={"c0":0,"c2":0,"c5":0,"c8":0}] - expected: FAIL [:isAsync=true;constants={"c0":0,"c2":0,"c8":0}] expected: FAIL @@ -255,24 +253,18 @@ [cts.https.html?q=webgpu:api,validation,compute_pipeline:overrides,value,type_error:*] [:isAsync=false;constants={"cf":"_nan_"}] - expected: FAIL [:isAsync=false;constants={"cf":"_neginfinity_"}] - expected: FAIL [:isAsync=false;constants={"cf":"_posinfinity_"}] - expected: FAIL [:isAsync=false;constants={"cf":1}] [:isAsync=true;constants={"cf":"_nan_"}] - expected: FAIL [:isAsync=true;constants={"cf":"_neginfinity_"}] - expected: FAIL [:isAsync=true;constants={"cf":"_posinfinity_"}] - expected: FAIL [:isAsync=true;constants={"cf":1}] @@ -470,6 +462,8 @@ [cts.https.html?q=webgpu:api,validation,compute_pipeline:overrides,workgroup_size:*] + expected: + if os == "mac" and debug: [OK, CRASH] [:isAsync=false;type="i32";constants={"x":0,"y":0,"z":0}] expected: if os == "win": [PASS, FAIL] @@ -600,51 +594,33 @@ [:apiResource="storage_texture_1d_r32sint_read-only"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:apiResource="storage_texture_1d_r32sint_read-write"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:apiResource="storage_texture_1d_r32sint_write-only"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:apiResource="storage_texture_1d_r32uint_read-only"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:apiResource="storage_texture_1d_r32uint_read-write"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:apiResource="storage_texture_1d_r32uint_write-only"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:apiResource="storage_texture_2d-array_r32float_read-only"] expected: @@ -696,27 +672,18 @@ [:apiResource="storage_texture_2d_r32float_read-only"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:apiResource="storage_texture_2d_r32float_read-write"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:apiResource="storage_texture_2d_r32float_write-only"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:apiResource="storage_texture_2d_r32sint_read-only"] expected: @@ -730,11 +697,8 @@ [:apiResource="storage_texture_2d_r32sint_write-only"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if debug: [FAIL, TIMEOUT, NOTRUN] + if not debug: FAIL [:apiResource="storage_texture_2d_r32uint_read-only"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroup/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroup/cts.https.html.ini index 77f02578cdfa..17814535ca2d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroup/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroup/cts.https.html.ini @@ -111,15 +111,13 @@ [:resourceType="errorBuf";entry={"storageTexture":{"access":"read-only","format":"r32float"}}] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:resourceType="errorBuf";entry={"storageTexture":{"access":"read-write","format":"r32float"}}] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:resourceType="errorBuf";entry={"storageTexture":{"access":"write-only","format":"r32float"}}] @@ -143,19 +141,19 @@ [:resourceType="errorSamp";entry={"buffer":{"type":"read-only-storage"}}] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="errorSamp";entry={"buffer":{"type":"storage"}}] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="errorSamp";entry={"buffer":{"type":"uniform"}}] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="errorSamp";entry={"sampler":{"type":"comparison"}}] @@ -357,7 +355,7 @@ [:resourceType="readonlyStorageTex";entry={"buffer":{"type":"read-only-storage"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="readonlyStorageTex";entry={"buffer":{"type":"storage"}}] expected: @@ -372,46 +370,44 @@ [:resourceType="readonlyStorageTex";entry={"sampler":{"type":"comparison"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="readonlyStorageTex";entry={"sampler":{"type":"filtering"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="readonlyStorageTex";entry={"sampler":{"type":"non-filtering"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="readonlyStorageTex";entry={"storageTexture":{"access":"read-only","format":"r32float"}}] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:resourceType="readonlyStorageTex";entry={"storageTexture":{"access":"read-write","format":"r32float"}}] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:resourceType="readonlyStorageTex";entry={"storageTexture":{"access":"write-only","format":"r32float"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="readonlyStorageTex";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="readonlyStorageTex";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="readwriteStorageTex";entry={"buffer":{"type":"read-only-storage"}}] expected: @@ -421,12 +417,12 @@ [:resourceType="readwriteStorageTex";entry={"buffer":{"type":"storage"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="readwriteStorageTex";entry={"buffer":{"type":"uniform"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="readwriteStorageTex";entry={"sampler":{"type":"comparison"}}] expected: @@ -647,61 +643,59 @@ [:resourceType="writeonlyStorageTex";entry={"buffer":{"type":"read-only-storage"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="writeonlyStorageTex";entry={"buffer":{"type":"storage"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="writeonlyStorageTex";entry={"buffer":{"type":"uniform"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="writeonlyStorageTex";entry={"sampler":{"type":"comparison"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="writeonlyStorageTex";entry={"sampler":{"type":"filtering"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="writeonlyStorageTex";entry={"sampler":{"type":"non-filtering"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="writeonlyStorageTex";entry={"storageTexture":{"access":"read-only","format":"r32float"}}] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:resourceType="writeonlyStorageTex";entry={"storageTexture":{"access":"read-write","format":"r32float"}}] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:resourceType="writeonlyStorageTex";entry={"storageTexture":{"access":"write-only","format":"r32float"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="writeonlyStorageTex";entry={"texture":{"multisampled":false,"sampleType":"unfilterable-float"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:resourceType="writeonlyStorageTex";entry={"texture":{"multisampled":true,"sampleType":"unfilterable-float"}}] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:api,validation,createBindGroup:binding_resources,device_mismatch:*] @@ -968,13 +962,15 @@ [:storageTextureFormat="r32sint";resourceFormat="r32sint"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="r32sint";resourceFormat="r32uint"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -1447,16 +1443,19 @@ [:storageTextureFormat="rgba16float";resourceFormat="r32float"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16float";resourceFormat="r32sint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16float";resourceFormat="r32uint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16float";resourceFormat="rg32float"] @@ -1480,16 +1479,19 @@ [:storageTextureFormat="rgba16float";resourceFormat="rgba16float"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16float";resourceFormat="rgba16sint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16float";resourceFormat="rgba16uint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16float";resourceFormat="rgba32float"] @@ -1513,31 +1515,37 @@ [:storageTextureFormat="rgba16float";resourceFormat="rgba8sint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16float";resourceFormat="rgba8snorm"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16float";resourceFormat="rgba8uint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16float";resourceFormat="rgba8unorm"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16sint";resourceFormat="r32float"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16sint";resourceFormat="r32sint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16sint";resourceFormat="r32uint"] @@ -1548,16 +1556,19 @@ [:storageTextureFormat="rgba16sint";resourceFormat="rg32float"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16sint";resourceFormat="rg32sint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16sint";resourceFormat="rg32uint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16sint";resourceFormat="rgba16float"] @@ -1578,16 +1589,19 @@ [:storageTextureFormat="rgba16sint";resourceFormat="rgba32float"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16sint";resourceFormat="rgba32sint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16sint";resourceFormat="rgba32uint"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16sint";resourceFormat="rgba8sint"] @@ -1598,7 +1612,7 @@ [:storageTextureFormat="rgba16sint";resourceFormat="rgba8snorm"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16sint";resourceFormat="rgba8uint"] expected: @@ -1608,6 +1622,7 @@ [:storageTextureFormat="rgba16sint";resourceFormat="rgba8unorm"] expected: if os == "win": [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16uint";resourceFormat="r32float"] expected: @@ -1648,10 +1663,12 @@ [:storageTextureFormat="rgba16uint";resourceFormat="rgba32float"] expected: if os == "win": [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16uint";resourceFormat="rgba32sint"] expected: if os == "win": [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:storageTextureFormat="rgba16uint";resourceFormat="rgba32uint"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroupLayout/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroupLayout/cts.https.html.ini index 98086f1cf0e4..17ceb1556b17 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroupLayout/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createBindGroupLayout/cts.https.html.ini @@ -506,20 +506,17 @@ [:format="bc1-rgba-unorm";access="read-only"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="bc1-rgba-unorm";access="read-write"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="bc1-rgba-unorm";access="write-only"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="bc1-rgba-unorm-srgb"] @@ -548,6 +545,7 @@ [:format="bc2-rgba-unorm";access="read-only"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -561,7 +559,7 @@ [:format="bc2-rgba-unorm";access="write-only"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -579,6 +577,7 @@ [:format="bc2-rgba-unorm-srgb";access="read-write"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -607,13 +606,21 @@ if os == "mac": [TIMEOUT, NOTRUN] [:format="bc3-rgba-unorm";access="write-only"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:format="bc3-rgba-unorm-srgb"] expected: FAIL [:format="bc3-rgba-unorm-srgb";access="read-only"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:format="bc3-rgba-unorm-srgb";access="read-write"] expected: [TIMEOUT, NOTRUN] @@ -758,18 +765,17 @@ [:format="depth24plus";access="read-only"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="depth24plus";access="read-write"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="depth24plus";access="write-only"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="depth24plus-stencil8"] @@ -777,20 +783,17 @@ [:format="depth24plus-stencil8";access="read-only"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";access="read-write"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";access="write-only"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="depth32float"] @@ -803,12 +806,12 @@ [:format="depth32float";access="read-write"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="depth32float";access="write-only"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="depth32float-stencil8"] @@ -816,20 +819,17 @@ [:format="depth32float-stencil8";access="read-only"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="depth32float-stencil8";access="read-write"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="depth32float-stencil8";access="write-only"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:format="eac-r11snorm"] @@ -1077,12 +1077,14 @@ [:format="rg11b10ufloat";access="read-only"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="rg11b10ufloat";access="read-write"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="rg11b10ufloat";access="write-only"] expected: @@ -1149,11 +1151,11 @@ [:format="rg32sint";access="read-write"] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="rg32sint";access="write-only"] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="rg32uint"] expected: @@ -1168,11 +1170,11 @@ [:format="rg32uint";access="read-write"] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="rg32uint";access="write-only"] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="rg8sint"] expected: FAIL @@ -1222,6 +1224,7 @@ expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="rgb10a2uint";access="write-only"] expected: @@ -1247,7 +1250,8 @@ [:format="rgb10a2unorm";access="write-only"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="rgb9e5ufloat"] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createTexture/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createTexture/cts.https.html.ini index e3730a70fe16..932da2cac19f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createTexture/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createTexture/cts.https.html.ini @@ -357,6 +357,7 @@ [:dimension="1d";format="r16float"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="r16sint"] expected: @@ -406,14 +407,17 @@ [:dimension="1d";format="rg16float"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="rg16sint"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="rg16uint"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="rg32float"] expected: @@ -479,7 +483,7 @@ [:dimension="1d";format="rgba16uint"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="rgba32float"] expected: @@ -954,13 +958,15 @@ [:dimension="2d";format="rg16sint"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";format="rg16uint"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -2123,16 +2129,17 @@ [:dimension="1d";format="rg16float"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="rg16sint"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="rg16uint"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="rg32float"] expected: @@ -2719,8 +2726,7 @@ expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:dimension="2d";format="rgb10a2unorm"] @@ -4910,7 +4916,7 @@ [cts.https.html?q=webgpu:api,validation,createTexture:sampleCount,various_sampleCount_with_all_formats:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:dimension="2d";format="astc-10x10-unorm"] expected: @@ -28375,11 +28381,13 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="_undef_";format="rgba8unorm";sizeVariant=[{"mult":1,"add":1},{"mult":0,"add":1},{"mult":0,"add":1}\]] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="_undef_";format="rgba8unorm-srgb";sizeVariant=[{"mult":0,"add":1},{"mult":0,"add":1},{"mult":1,"add":-1}\]] expected: @@ -29216,6 +29224,7 @@ [:dimension="1d";format="rg11b10ufloat"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="rg16float"] expected: @@ -29263,10 +29272,12 @@ [:dimension="1d";format="rgb10a2unorm"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="rgb9e5ufloat"] expected: if os == "win": [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="rgba16float"] expected: @@ -29962,6 +29973,7 @@ [:dimension="1d";format="bgra8unorm-srgb"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="r16float"] expected: @@ -29971,12 +29983,12 @@ [:dimension="1d";format="r16sint"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="r16uint"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="1d";format="r32float"] expected: @@ -30419,7 +30431,7 @@ [:dimension="2d";format="depth24plus"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -30432,7 +30444,7 @@ [:dimension="2d";format="depth32float"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -30523,19 +30535,19 @@ [:dimension="2d";format="r32float"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";format="r32sint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";format="r32uint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";format="r8sint"] @@ -30589,19 +30601,19 @@ [:dimension="2d";format="rg32float"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";format="rg32sint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";format="rg32uint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";format="rg8sint"] @@ -30650,13 +30662,13 @@ [:dimension="2d";format="rgba16float"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";format="rgba16sint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";format="rgba16uint"] @@ -30680,7 +30692,7 @@ [:dimension="2d";format="rgba32uint"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";format="rgba8sint"] @@ -31409,14 +31421,13 @@ [:formatFeature="texture-compression-bc";viewFormatFeature="_undef_"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:formatFeature="texture-compression-bc";viewFormatFeature="depth32float-stencil8"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:formatFeature="texture-compression-bc";viewFormatFeature="texture-compression-astc"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createView/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createView/cts.https.html.ini index cec5f35dd6bf..50f07086dec8 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createView/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/createView/cts.https.html.ini @@ -965,19 +965,19 @@ [:format="depth24plus";aspect="depth-only"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth24plus";aspect="stencil-only"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";aspect="all"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="depth24plus-stencil8";aspect="depth-only"] @@ -1277,29 +1277,32 @@ [:format="r32float";aspect="all"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="r32float";aspect="depth-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="r32float";aspect="stencil-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="r32sint";aspect="all"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="r32sint";aspect="depth-only"] expected: if os == "win": [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="r32sint";aspect="stencil-only"] expected: if os == "win": [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="r32uint";aspect="all"] expected: @@ -1418,47 +1421,47 @@ [:format="rg32float";aspect="all"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rg32float";aspect="depth-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rg32float";aspect="stencil-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rg32sint";aspect="all"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rg32sint";aspect="depth-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rg32sint";aspect="stencil-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rg32uint";aspect="all"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rg32uint";aspect="depth-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rg32uint";aspect="stencil-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rg8sint";aspect="all"] expected: @@ -1615,32 +1618,32 @@ [:format="rgba32sint";aspect="all"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rgba32sint";aspect="depth-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rgba32sint";aspect="stencil-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rgba32uint";aspect="all"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rgba32uint";aspect="depth-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rgba32uint";aspect="stencil-only"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:format="rgba8sint";aspect="all"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini index f359d87eda67..c5a3110ab912 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/copyTextureToTexture/cts.https.html.ini @@ -119,21 +119,23 @@ [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=1;dstCopyLevel=3] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=0] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=1] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":0};srcCopyLevel=3;dstCopyLevel=3] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":1};srcCopyLevel=0;dstCopyLevel=0] @@ -342,36 +344,43 @@ [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=1] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=0;dstCopyLevel=3] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=1] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=1;dstCopyLevel=3] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=0] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="2d";copyBoxOffsets={"x":0,"y":0,"z":1,"width":0,"height":0,"depthOrArrayLayers":-1};srcCopyLevel=3;dstCopyLevel=1] @@ -1375,19 +1384,22 @@ [:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=0] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=1] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":-1,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=0;dstCopyLevel=3] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -1467,19 +1479,22 @@ [:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=0] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=1] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:dimension="3d";copyBoxOffsets={"x":1,"y":0,"z":0,"width":0,"height":0,"depthOrArrayLayers":-2};srcCopyLevel=3;dstCopyLevel=3] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/render/draw/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/render/draw/cts.https.html.ini index 34723af87db1..1da7d29987db 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/render/draw/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/cmds/render/draw/cts.https.html.ini @@ -33,6 +33,8 @@ [cts.https.html?q=webgpu:api,validation,encoding,cmds,render,draw:index_buffer_OOB:*] + expected: + if os == "mac": SKIP [:bufferSizeInElements=100;bindingSizeInElements=10;drawIndexCount=10;drawType="drawIndexed"] expected: if os == "win" and not debug: [PASS, FAIL] @@ -83,6 +85,8 @@ [cts.https.html?q=webgpu:api,validation,encoding,cmds,render,draw:last_buffer_setting_take_account:*] + expected: + if os == "mac": SKIP [:] expected: if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html.ini index 50449b18d0d5..50acf1b92a0a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/encoding/programmable/pipeline_bind_group_compat/cts.https.html.ini @@ -94,7 +94,8 @@ [:encoderType="render%20pass";call="drawIndexed";callWithZero=false] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20pass";call="drawIndexed";callWithZero=true] expected: @@ -134,152 +135,132 @@ expected: if os == "win" and debug: [OK, ERROR] if os == "win" and not debug: [OK, CRASH, ERROR] - if os == "mac" and not debug: [OK, TIMEOUT] + if os == "mac": [OK, TIMEOUT] [:encoderType="compute%20pass";call="dispatch";callWithZero=false] expected: if os == "win" and debug: FAIL if os == "win" and not debug: [PASS, FAIL] if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="compute%20pass";call="dispatch";callWithZero=true] expected: if os == "win" and debug: FAIL if os == "win" and not debug: [PASS, FAIL] if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="compute%20pass";call="dispatchIndirect";callWithZero=false] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="compute%20pass";call="dispatchIndirect";callWithZero=true] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20bundle";call="draw";callWithZero=false] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20bundle";call="draw";callWithZero=true] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20bundle";call="drawIndexed";callWithZero=false] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20bundle";call="drawIndexed";callWithZero=true] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20bundle";call="drawIndexedIndirect";callWithZero=false] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20bundle";call="drawIndexedIndirect";callWithZero=true] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20bundle";call="drawIndirect";callWithZero=false] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20bundle";call="drawIndirect";callWithZero=true] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20pass";call="draw";callWithZero=false] expected: if os == "win" and debug: FAIL if os == "win" and not debug: [PASS, FAIL] if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20pass";call="draw";callWithZero=true] expected: if os == "win" and debug: FAIL if os == "win" and not debug: [PASS, FAIL] if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20pass";call="drawIndexed";callWithZero=false] expected: if os == "win" and debug: FAIL if os == "win" and not debug: [PASS, FAIL] if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20pass";call="drawIndexed";callWithZero=true] expected: if os == "win" and debug: FAIL if os == "win" and not debug: [PASS, FAIL] if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20pass";call="drawIndexedIndirect";callWithZero=false] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20pass";call="drawIndexedIndirect";callWithZero=true] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20pass";call="drawIndirect";callWithZero=false] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:encoderType="render%20pass";call="drawIndirect";callWithZero=true] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:bgl_visibility_mismatch:*] @@ -345,19 +326,21 @@ [:encoderType="render%20pass";call="draw";callWithZero=false] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, FAIL] + if os == "mac" and not debug: [PASS, FAIL] [:encoderType="render%20pass";call="draw";callWithZero=true] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, FAIL] [:encoderType="render%20pass";call="drawIndexed";callWithZero=false] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, FAIL] [:encoderType="render%20pass";call="drawIndexed";callWithZero=true] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, FAIL] [:encoderType="render%20pass";call="drawIndexedIndirect";callWithZero=false] expected: FAIL @@ -448,7 +431,8 @@ [:encoderType="render%20pass";call="draw";callWithZero=false] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "mac": [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, FAIL] [:encoderType="render%20pass";call="draw";callWithZero=true] expected: @@ -462,7 +446,8 @@ [:encoderType="render%20pass";call="drawIndexed";callWithZero=true] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, FAIL] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:encoderType="render%20pass";call="drawIndexedIndirect";callWithZero=false] @@ -511,168 +496,146 @@ [cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:default_bind_group_layouts_never_match,compute_pass:*] expected: - if os == "mac" and debug: [OK, TIMEOUT] + if os == "mac": [OK, TIMEOUT] [:pipelineType="auto0";bindingType="auto0";swap=false;empty=false;computeCommand="dispatch"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto0";swap=false;empty=false;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto0";swap=false;empty=true;computeCommand="dispatch"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto0";swap=false;empty=true;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto0";swap=true;empty=false;computeCommand="dispatch"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto0";swap=true;empty=false;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto0";swap=true;empty=true;computeCommand="dispatch"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto0";swap=true;empty=true;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto1";swap=false;empty=false;computeCommand="dispatch"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto1";swap=false;empty=false;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto1";swap=false;empty=true;computeCommand="dispatch"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="auto1";swap=false;empty=true;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="explicit";swap=false;empty=false;computeCommand="dispatch"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="explicit";swap=false;empty=false;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="explicit";swap=false;empty=true;computeCommand="dispatch"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="auto0";bindingType="explicit";swap=false;empty=true;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="explicit";bindingType="auto0";swap=false;empty=false;computeCommand="dispatch"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="explicit";bindingType="auto0";swap=false;empty=false;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="explicit";bindingType="auto0";swap=false;empty=true;computeCommand="dispatch"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="explicit";bindingType="auto0";swap=false;empty=true;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="explicit";bindingType="explicit";swap=false;empty=false;computeCommand="dispatch"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:pipelineType="explicit";bindingType="explicit";swap=false;empty=false;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:pipelineType="explicit";bindingType="explicit";swap=false;empty=true;computeCommand="dispatch"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:pipelineType="explicit";bindingType="explicit";swap=false;empty=true;computeCommand="dispatchIndirect"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:default_bind_group_layouts_never_match,render_pass:*] @@ -982,31 +945,53 @@ [cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:empty_bind_group_layouts_requires_empty_bind_groups,render_pass:*] + expected: + if os == "mac": [OK, TIMEOUT] [:bindGroupLayoutEntryCount=3;renderCommand="draw"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:bindGroupLayoutEntryCount=3;renderCommand="drawIndexed"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:bindGroupLayoutEntryCount=3;renderCommand="drawIndexedIndirect"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:bindGroupLayoutEntryCount=3;renderCommand="drawIndirect"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:bindGroupLayoutEntryCount=4;renderCommand="draw"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:bindGroupLayoutEntryCount=4;renderCommand="drawIndexed"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:bindGroupLayoutEntryCount=4;renderCommand="drawIndexedIndirect"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:bindGroupLayoutEntryCount=4;renderCommand="drawIndirect"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:api,validation,encoding,programmable,pipeline_bind_group_compat:sampler_binding,render_pipeline:*] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/error_scope/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/error_scope/cts.https.html.ini index a378e952539c..e7299a996c7a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/error_scope/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/error_scope/cts.https.html.ini @@ -101,6 +101,7 @@ [cts.https.html?q=webgpu:api,validation,error_scope:current_scope:*] expected: if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac" and debug: TIMEOUT [:errorFilter="out-of-memory";stackDepth=1] expected: @@ -132,26 +133,30 @@ expected: if os == "win": FAIL if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:errorFilter="validation";stackDepth=10] expected: if os == "win": FAIL if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:errorFilter="validation";stackDepth=100] expected: if os == "win": FAIL if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:errorFilter="validation";stackDepth=1000] expected: if os == "win": FAIL if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:errorFilter="validation";stackDepth=100000] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_related/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_related/cts.https.html.ini index 91083757868b..c3e29cedb43f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_related/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_related/cts.https.html.ini @@ -1846,11 +1846,13 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="r32uint";dimension="2d"] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="r32uint";dimension="3d"] expected: @@ -1997,13 +1999,13 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rg32sint";dimension="3d"] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rg32uint";dimension="1d"] expected: @@ -2132,16 +2134,19 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16float";dimension="2d"] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16float";dimension="3d"] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16sint";dimension="1d"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_texture_copies/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_texture_copies/cts.https.html.ini index 1a02c77d7317..4c2918228631 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_texture_copies/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/buffer_texture_copies/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:api,validation,image_copy,buffer_texture_copies:depth_stencil_format,copy_buffer_offset:*] + expected: + if os == "mac": SKIP [:format="depth16unorm";aspect="depth-only";copyType="CopyB2T"] expected: FAIL @@ -47,6 +49,8 @@ [cts.https.html?q=webgpu:api,validation,image_copy,buffer_texture_copies:depth_stencil_format,copy_buffer_size:*] + expected: + if os == "mac": SKIP [:format="depth16unorm";aspect="depth-only";copyType="CopyB2T"] expected: FAIL @@ -95,6 +99,8 @@ [cts.https.html?q=webgpu:api,validation,image_copy,buffer_texture_copies:depth_stencil_format,copy_usage_and_aspect:*] + expected: + if os == "mac": SKIP [:format="depth16unorm"] expected: FAIL @@ -115,6 +121,8 @@ [cts.https.html?q=webgpu:api,validation,image_copy,buffer_texture_copies:device_mismatch:*] + expected: + if os == "mac": SKIP [:copyType="CopyB2T"] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/layout_related/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/layout_related/cts.https.html.ini index 17e2a7e4f34b..cd6c47d57c09 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/layout_related/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/layout_related/cts.https.html.ini @@ -2260,11 +2260,13 @@ [:method="WriteTexture";format="bgra8unorm-srgb";dimension="1d"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bgra8unorm-srgb";dimension="2d"] expected: if os == "win": FAIL + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bgra8unorm-srgb";dimension="3d"] @@ -5558,61 +5560,61 @@ [:method="WriteTexture";format="bc1-rgba-unorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc1-rgba-unorm-srgb";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc2-rgba-unorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc2-rgba-unorm-srgb";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc3-rgba-unorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc3-rgba-unorm-srgb";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc4-r-snorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc4-r-unorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc5-rg-snorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc5-rg-unorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc6h-rgb-float";dimension="2d"] @@ -5672,7 +5674,7 @@ [:method="WriteTexture";format="depth16unorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="eac-r11snorm";dimension="2d"] @@ -6121,13 +6123,13 @@ [:method="WriteTexture";format="rgb9e5ufloat";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgb9e5ufloat";dimension="3d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16float";dimension="1d"] @@ -6316,7 +6318,7 @@ [:method="WriteTexture";format="stencil8";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -8564,57 +8566,49 @@ [:method="WriteTexture";format="bc1-rgba-unorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc1-rgba-unorm-srgb";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc2-rgba-unorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc2-rgba-unorm-srgb";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc3-rgba-unorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc3-rgba-unorm-srgb";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc4-r-snorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc4-r-unorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc5-rg-snorm";dimension="2d"] @@ -8694,7 +8688,7 @@ [:method="WriteTexture";format="depth16unorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="eac-r11snorm";dimension="2d"] @@ -8883,32 +8877,59 @@ [:method="WriteTexture";format="r8sint";dimension="1d"] expected: if os == "win": FAIL + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="r8sint";dimension="2d"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:method="WriteTexture";format="r8sint";dimension="3d"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:method="WriteTexture";format="r8snorm";dimension="1d"] expected: if os == "win": FAIL + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="r8snorm";dimension="2d"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:method="WriteTexture";format="r8snorm";dimension="3d"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:method="WriteTexture";format="r8uint";dimension="1d"] expected: if os == "win": FAIL + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="r8uint";dimension="2d"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:method="WriteTexture";format="r8uint";dimension="3d"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:method="WriteTexture";format="r8unorm";dimension="1d"] expected: @@ -8918,26 +8939,28 @@ expected: FAIL [:method="WriteTexture";format="r8unorm";dimension="3d"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:method="WriteTexture";format="rg11b10ufloat";dimension="1d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rg11b10ufloat";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rg11b10ufloat";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rg16float";dimension="1d"] @@ -9121,72 +9144,74 @@ [:method="WriteTexture";format="rg8unorm";dimension="1d"] expected: if os == "win": FAIL + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rg8unorm";dimension="2d"] - expected: FAIL - - [:method="WriteTexture";format="rg8unorm";dimension="3d"] - expected: FAIL - - [:method="WriteTexture";format="rgb10a2uint";dimension="1d"] expected: if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL + if os == "mac": FAIL + + [:method="WriteTexture";format="rg8unorm";dimension="3d"] + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL + + [:method="WriteTexture";format="rgb10a2uint";dimension="1d"] + expected: + if os == "win": FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgb10a2uint";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgb10a2uint";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgb10a2unorm";dimension="1d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgb10a2unorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgb10a2unorm";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgb9e5ufloat";dimension="1d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgb9e5ufloat";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgb9e5ufloat";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16float";dimension="1d"] @@ -9206,7 +9231,8 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:method="WriteTexture";format="rgba16sint";dimension="1d"] expected: @@ -9249,21 +9275,19 @@ [:method="WriteTexture";format="rgba32float";dimension="1d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba32float";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba32float";dimension="3d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba32sint";dimension="1d"] @@ -9404,7 +9428,7 @@ [:method="WriteTexture";format="stencil8";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -11563,31 +11587,31 @@ [:method="WriteTexture";format="bc1-rgba-unorm-srgb";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc2-rgba-unorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc2-rgba-unorm-srgb";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc3-rgba-unorm";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc3-rgba-unorm-srgb";dimension="2d"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc4-r-snorm";dimension="2d"] @@ -12130,31 +12154,37 @@ [:method="WriteTexture";format="rgba16float";dimension="1d"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16float";dimension="2d"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16float";dimension="3d"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16sint";dimension="1d"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16sint";dimension="2d"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16sint";dimension="3d"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba16uint";dimension="1d"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/texture_related/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/texture_related/cts.https.html.ini index 2957d4e47eab..15824d35735f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/texture_related/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/image_copy/texture_related/cts.https.html.ini @@ -3588,22 +3588,22 @@ [:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc3-rgba-unorm"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc3-rgba-unorm-srgb"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc4-r-snorm"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc4-r-unorm"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc5-rg-snorm"] expected: @@ -3613,7 +3613,7 @@ [:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc5-rg-unorm"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="bc6h-rgb-float"] expected: @@ -3814,6 +3814,8 @@ [:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba8snorm"] [:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba8uint"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=1;dimension="2d";format="rgba8unorm"] @@ -4147,7 +4149,7 @@ [:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc3-rgba-unorm-srgb"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -4170,13 +4172,15 @@ expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc5-rg-unorm"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc6h-rgb-float"] @@ -4194,20 +4198,24 @@ if os == "mac": [TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc7-rgba-unorm"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bc7-rgba-unorm-srgb"] expected: [TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bgra8unorm"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="bgra8unorm-srgb"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] @@ -4418,7 +4426,7 @@ [:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba8sint"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] @@ -4430,7 +4438,7 @@ [:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="rgba8uint"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] @@ -4443,6 +4451,7 @@ expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";depthOrArrayLayers=3;dimension="2d";format="stencil8"] expected: @@ -8044,6 +8053,7 @@ [:method="WriteTexture";format="bgra8unorm";depthOrArrayLayers=1;dimension="1d"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bgra8unorm";depthOrArrayLayers=1;dimension="2d"] expected: @@ -8862,10 +8872,12 @@ [:method="WriteTexture";format="rgba8sint";depthOrArrayLayers=3;dimension="2d"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba8sint";depthOrArrayLayers=3;dimension="3d"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="rgba8snorm";depthOrArrayLayers=1;dimension="1d"] expected: @@ -11022,8 +11034,7 @@ [:method="WriteTexture";format="bc4-r-snorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc4-r-unorm";dimension="2d"] @@ -11036,36 +11047,31 @@ [:method="WriteTexture";format="bc5-rg-snorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc5-rg-unorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc6h-rgb-float";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc6h-rgb-ufloat";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc7-rgba-unorm";dimension="2d"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:method="WriteTexture";format="bc7-rgba-unorm-srgb";dimension="2d"] @@ -11216,6 +11222,7 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="r32sint";dimension="2d"] expected: @@ -11238,11 +11245,13 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="r32uint";dimension="3d"] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:method="WriteTexture";format="r8sint";dimension="1d"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html.ini index 57f1426d1259..a14d7a9d5e0e 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/layout_shader_compat/cts.https.html.ini @@ -30,16 +30,14 @@ [:bindingInPipelineLayout="compareSamp";bindingInShader="readonlyStorageTex"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:bindingInPipelineLayout="compareSamp";bindingInShader="readwriteStorageTex"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -54,8 +52,7 @@ [:bindingInPipelineLayout="compareSamp";bindingInShader="sampledTexMS"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -78,8 +75,7 @@ [:bindingInPipelineLayout="compareSamp";bindingInShader="writeonlyStorageTex"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -295,7 +291,11 @@ if os == "mac": FAIL [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="storageBuf"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:bindingInPipelineLayout="readonlyStorageBuf";bindingInShader="uniformBuf"] expected: FAIL @@ -335,16 +335,14 @@ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="readonlyStorageTex"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="readwriteStorageTex"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -359,8 +357,7 @@ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="sampledTexMS"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -383,8 +380,7 @@ [:bindingInPipelineLayout="readonlyStorageTex";bindingInShader="writeonlyStorageTex"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -469,16 +465,14 @@ [:bindingInPipelineLayout="sampledTex";bindingInShader="storageBuf"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:bindingInPipelineLayout="sampledTex";bindingInShader="uniformBuf"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -516,7 +510,8 @@ if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:bindingInPipelineLayout="sampledTexMS";bindingInShader="readwriteStorageTex"] expected: @@ -538,7 +533,8 @@ if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:bindingInPipelineLayout="sampledTexMS";bindingInShader="storageBuf"] expected: @@ -650,11 +646,7 @@ expected: [FAIL, TIMEOUT, NOTRUN] [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="sampledTex"] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + expected: [FAIL, TIMEOUT, NOTRUN] [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="sampledTexMS"] expected: [FAIL, TIMEOUT, NOTRUN] @@ -662,16 +654,14 @@ [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="storageBuf"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:bindingInPipelineLayout="writeonlyStorageTex";bindingInShader="uniformBuf"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini index 6c24ecbedb46..8be47cb9345e 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/depth_stencil_state/cts.https.html.ini @@ -348,7 +348,7 @@ [:isAsync=true;format="depth24plus-stencil8";depthCompare="equal"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="depth24plus-stencil8";depthCompare="greater"] expected: @@ -363,12 +363,12 @@ [:isAsync=true;format="depth24plus-stencil8";depthCompare="less"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="depth24plus-stencil8";depthCompare="less-equal"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="depth24plus-stencil8";depthCompare="never"] expected: @@ -1457,8 +1457,7 @@ expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba16uint"] expected: FAIL @@ -1651,7 +1650,7 @@ [:isAsync=false;format="depth24plus-stencil8";face="back";compare="_undef_"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth24plus-stencil8";face="back";compare="always"] expected: @@ -1691,7 +1690,7 @@ [:isAsync=false;format="depth24plus-stencil8";face="back";compare="never"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth24plus-stencil8";face="back";compare="not-equal"] expected: @@ -1706,21 +1705,22 @@ [:isAsync=false;format="depth24plus-stencil8";face="front";compare="always"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth24plus-stencil8";face="front";compare="equal"] expected: if os == "win": [PASS, FAIL] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth24plus-stencil8";face="front";compare="greater"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth24plus-stencil8";face="front";compare="greater-equal"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth24plus-stencil8";face="front";compare="less"] expected: @@ -1729,6 +1729,7 @@ [:isAsync=false;format="depth24plus-stencil8";face="front";compare="less-equal"] expected: if os == "win": [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth24plus-stencil8";face="front";compare="never"] expected: @@ -1737,7 +1738,7 @@ [:isAsync=false;format="depth24plus-stencil8";face="front";compare="not-equal"] expected: if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth32float";face="back";compare="_undef_"] expected: @@ -1993,7 +1994,8 @@ [:isAsync=true;format="depth16unorm";face="back";compare="_undef_"] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, FAIL] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -2453,19 +2455,19 @@ [:isAsync=true;format="stencil8";face="back";compare="equal"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="stencil8";face="back";compare="greater"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="stencil8";face="back";compare="greater-equal"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="stencil8";face="back";compare="less"] @@ -2477,7 +2479,7 @@ [:isAsync=true;format="stencil8";face="back";compare="less-equal"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="stencil8";face="back";compare="never"] @@ -2489,7 +2491,7 @@ [:isAsync=true;format="stencil8";face="back";compare="not-equal"] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="stencil8";face="front";compare="_undef_"] @@ -2723,22 +2725,27 @@ [:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="decrement-clamp"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="decrement-wrap"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="increment-clamp"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="increment-wrap"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="invert"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="keep"] expected: @@ -2747,10 +2754,12 @@ [:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="replace"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth16unorm";faceAndOpType="frontDepthFailOp";op="zero"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth16unorm";faceAndOpType="frontFailOp";op="_undef_"] expected: @@ -2791,6 +2800,7 @@ [:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="_undef_"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="decrement-clamp"] expected: @@ -2824,6 +2834,7 @@ [:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="keep"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="replace"] expected: @@ -2833,6 +2844,7 @@ [:isAsync=false;format="depth16unorm";faceAndOpType="frontPassOp";op="zero"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="depth24plus";faceAndOpType="backDepthFailOp";op="_undef_"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html.ini index 024071ad27d8..02e8c88a2a1f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/fragment_state/cts.https.html.ini @@ -133,15 +133,15 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:limits,maxColorAttachments:*] [:isAsync=false;targetsLengthVariant={"mult":1,"add":0}] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, FAIL] [:isAsync=false;targetsLengthVariant={"mult":1,"add":1}] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, FAIL] [:isAsync=true;targetsLengthVariant={"mult":1,"add":0}] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, FAIL] [:isAsync=true;targetsLengthVariant={"mult":1,"add":1}] expected: FAIL @@ -152,12 +152,20 @@ if os == "win" and debug: TIMEOUT if os == "linux" and debug: [OK, TIMEOUT] [:isAsync=false;format="bgra8unorm";componentCount=1] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bgra8unorm";componentCount=2] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bgra8unorm";componentCount=3] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bgra8unorm";componentCount=4] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="r8unorm";componentCount=1] expected: FAIL @@ -166,27 +174,53 @@ expected: FAIL [:isAsync=false;format="r8unorm";componentCount=3] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=false;format="r8unorm";componentCount=4] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rg8unorm";componentCount=1] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rg8unorm";componentCount=2] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=false;format="rg8unorm";componentCount=3] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=false;format="rg8unorm";componentCount=4] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rgba8unorm";componentCount=1] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rgba8unorm";componentCount=2] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rgba8unorm";componentCount=3] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rgba8unorm";componentCount=4] + expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="bgra8unorm";componentCount=1] expected: @@ -218,10 +252,18 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r8unorm";componentCount=1] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="r8unorm";componentCount=2] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="r8unorm";componentCount=3] expected: @@ -292,6 +334,7 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:pipeline_output_targets:*] expected: if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [OK, TIMEOUT] if os == "linux" and debug: TIMEOUT if os == "linux" and not debug: [OK, TIMEOUT] [:isAsync=false;format="_undef_"] @@ -522,7 +565,8 @@ [:isAsync=true;format="r8uint"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -560,24 +604,21 @@ [:isAsync=true;format="rg32float"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:isAsync=true;format="rg32sint"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:isAsync=true;format="rg32uint"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -608,16 +649,14 @@ [:isAsync=true;format="rgb10a2uint"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:isAsync=true;format="rgb10a2unorm"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL @@ -647,24 +686,21 @@ [:isAsync=true;format="rgba32float"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:isAsync=true;format="rgba32sint"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:isAsync=true;format="rgba32uint"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -730,14 +766,15 @@ [:isAsync=true;component="color"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:targets_format_filterable:*] + expected: + if os == "win" and debug: [OK, TIMEOUT] [:isAsync=false;format="bgra8unorm"] expected: if os == "win" and debug: [PASS, FAIL] @@ -796,7 +833,7 @@ [:isAsync=false;format="rg32float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rg32sint"] expected: @@ -819,11 +856,15 @@ if os == "win" and debug: [PASS, FAIL] [:isAsync=false;format="rgb10a2uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=false;format="rgb10a2unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rgba16float"] expected: @@ -839,15 +880,15 @@ [:isAsync=false;format="rgba32float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rgba32sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rgba32uint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="rgba8sint"] expected: @@ -867,109 +908,197 @@ [:isAsync=true;format="bgra8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="bgra8unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r16float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r16sint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="r16uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="r32float"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="r32sint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="r32uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="r8sint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="r8uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="r8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg16float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg16sint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rg16uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rg32float"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rg32sint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rg32uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rg8sint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rg8uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rg8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgb10a2uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rgb10a2unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba16float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba16sint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rgba16uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rgba32float"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rgba32sint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rgba32uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rgba8sint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rgba8uint"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rgba8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba8unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:targets_format_is_color_format:*] @@ -1011,119 +1140,121 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,fragment_state:targets_format_renderable:*] expected: + if os == "win": [OK, TIMEOUT] if os == "linux" and debug: [OK, TIMEOUT] - if os == "mac": TIMEOUT + if os == "mac" and debug: TIMEOUT + if os == "mac" and not debug: [OK, TIMEOUT] [:isAsync=false;format="astc-10x10-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-10x10-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-10x5-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-10x5-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-10x6-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-10x6-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-10x8-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-10x8-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-12x10-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-12x10-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-12x12-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-12x12-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-4x4-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-4x4-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-5x4-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-5x4-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-5x5-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-5x5-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-6x5-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-6x5-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-6x6-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-6x6-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-8x5-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-8x5-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-8x6-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-8x6-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-8x8-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="astc-8x8-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bc1-rgba-unorm"] expected: @@ -1147,39 +1278,39 @@ [:isAsync=false;format="bc3-rgba-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bc4-r-snorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bc4-r-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bc5-rg-snorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bc5-rg-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bc6h-rgb-float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bc6h-rgb-ufloat"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bc7-rgba-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bc7-rgba-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="bgra8unorm"] expected: @@ -1211,43 +1342,43 @@ [:isAsync=false;format="eac-r11snorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="eac-r11unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="eac-rg11snorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="eac-rg11unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="etc2-rgb8a1unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="etc2-rgb8a1unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="etc2-rgb8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="etc2-rgb8unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="etc2-rgba8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="etc2-rgba8unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=false;format="r16float"] expected: @@ -1370,7 +1501,7 @@ [:isAsync=false;format="rgba8sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, FAIL] [:isAsync=false;format="rgba8snorm"] expected: @@ -1394,277 +1525,277 @@ [:isAsync=true;format="astc-10x10-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-10x10-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-10x5-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-10x5-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-10x6-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-10x6-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-10x8-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-10x8-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-12x10-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-12x10-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-12x12-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-12x12-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-4x4-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-4x4-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-5x4-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-5x4-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-5x5-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-5x5-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-6x5-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-6x5-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-6x6-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-6x6-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-8x5-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-8x5-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-8x6-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-8x6-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-8x8-unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="astc-8x8-unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="bc1-rgba-unorm"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc1-rgba-unorm-srgb"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc2-rgba-unorm"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc2-rgba-unorm-srgb"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc3-rgba-unorm"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc3-rgba-unorm-srgb"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc4-r-snorm"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc4-r-unorm"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc5-rg-snorm"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc5-rg-unorm"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc6h-rgb-float"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc6h-rgb-ufloat"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc7-rgba-unorm"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bc7-rgba-unorm-srgb"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="bgra8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="bgra8unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="depth16unorm"] expected: FAIL @@ -1683,217 +1814,229 @@ [:isAsync=true;format="eac-r11snorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="eac-r11unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="eac-rg11snorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="eac-rg11unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="etc2-rgb8a1unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="etc2-rgb8a1unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="etc2-rgb8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="etc2-rgb8unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="etc2-rgba8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="etc2-rgba8unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r16float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r16sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r16uint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r32float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r32sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r32uint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r8sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r8snorm"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="r8uint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="r8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg11b10ufloat"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="rg16float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg16sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg16uint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg32float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg32sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg32uint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg8sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg8snorm"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rg8uint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rg8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgb10a2uint"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="rgb10a2unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgb9e5ufloat"] expected: - if os == "win": FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba16float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba16sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba16uint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba32float"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba32sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba32uint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba8sint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba8snorm"] - expected: FAIL + expected: + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL + if os == "linux": FAIL + if os == "mac": FAIL [:isAsync=true;format="rgba8uint"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba8unorm"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="rgba8unorm-srgb"] expected: - if os == "win" and debug: [PASS, FAIL] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] [:isAsync=true;format="stencil8"] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html.ini index fcb167e82616..cc8569c52e26 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/misc/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,misc:basic:*] + expected: + if os == "mac": SKIP [:isAsync=false] expected: if os == "win" and not debug: [PASS, FAIL] @@ -9,6 +11,8 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,misc:external_texture:*] + expected: + if os == "mac": SKIP [:] expected: if os == "win": FAIL @@ -16,11 +20,15 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,misc:pipeline_layout,device_mismatch:*] + expected: + if os == "mac": SKIP [:] expected: FAIL [cts.https.html?q=webgpu:api,validation,render_pipeline,misc:vertex_state_only:*] + expected: + if os == "mac": SKIP [:isAsync=false] expected: if os == "win" and not debug: [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/overrides/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/overrides/cts.https.html.ini index d448500489ff..7da76bf6564b 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/overrides/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/overrides/cts.https.html.ini @@ -184,10 +184,8 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:uninitialized,fragment:*] [:isAsync=false;fragmentConstants={"r":1,"b":1}] - expected: FAIL [:isAsync=false;fragmentConstants={"r":1,"g":1,"b":1,"a":1}] - expected: FAIL [:isAsync=false;fragmentConstants={"r":1,"g":1}] expected: @@ -204,10 +202,8 @@ if os == "mac": FAIL [:isAsync=true;fragmentConstants={"r":1,"b":1}] - expected: FAIL [:isAsync=true;fragmentConstants={"r":1,"g":1,"b":1,"a":1}] - expected: FAIL [:isAsync=true;fragmentConstants={"r":1,"g":1}] expected: FAIL @@ -218,7 +214,6 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:uninitialized,vertex:*] [:isAsync=false;vertexConstants={"x":1,"y":1,"z":1,"w":1}] - expected: FAIL [:isAsync=false;vertexConstants={"x":1,"y":1}] expected: @@ -228,7 +223,6 @@ if os == "mac": FAIL [:isAsync=false;vertexConstants={"x":1,"z":1}] - expected: FAIL [:isAsync=false;vertexConstants={}] expected: @@ -238,13 +232,11 @@ if os == "mac": FAIL [:isAsync=true;vertexConstants={"x":1,"y":1,"z":1,"w":1}] - expected: FAIL [:isAsync=true;vertexConstants={"x":1,"y":1}] expected: FAIL [:isAsync=true;vertexConstants={"x":1,"z":1}] - expected: FAIL [:isAsync=true;vertexConstants={}] expected: FAIL @@ -252,48 +244,36 @@ [cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:value,type_error,fragment:*] [:isAsync=false;fragmentConstants={"cf":"_nan_"}] - expected: FAIL [:isAsync=false;fragmentConstants={"cf":"_neginfinity_"}] - expected: FAIL [:isAsync=false;fragmentConstants={"cf":"_posinfinity_"}] - expected: FAIL [:isAsync=false;fragmentConstants={"cf":1}] [:isAsync=true;fragmentConstants={"cf":"_nan_"}] - expected: FAIL [:isAsync=true;fragmentConstants={"cf":"_neginfinity_"}] - expected: FAIL [:isAsync=true;fragmentConstants={"cf":"_posinfinity_"}] - expected: FAIL [:isAsync=true;fragmentConstants={"cf":1}] [cts.https.html?q=webgpu:api,validation,render_pipeline,overrides:value,type_error,vertex:*] [:isAsync=false;vertexConstants={"cf":"_nan_"}] - expected: FAIL [:isAsync=false;vertexConstants={"cf":"_neginfinity_"}] - expected: FAIL [:isAsync=false;vertexConstants={"cf":"_posinfinity_"}] - expected: FAIL [:isAsync=false;vertexConstants={"cf":1}] [:isAsync=true;vertexConstants={"cf":"_nan_"}] - expected: FAIL [:isAsync=true;vertexConstants={"cf":"_neginfinity_"}] - expected: FAIL [:isAsync=true;vertexConstants={"cf":"_posinfinity_"}] - expected: FAIL [:isAsync=true;vertexConstants={"cf":1}] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html.ini index 55fa8e4d8e57..8628da5a2495 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/resource_compatibility/cts.https.html.ini @@ -460,19 +460,22 @@ expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:stage="vertex";apiResource="storage_texture_2d-array_r32sint_read-only"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:stage="vertex";apiResource="storage_texture_2d-array_r32uint_read-only"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:stage="vertex";apiResource="storage_texture_2d_r32float_read-only"] expected: @@ -516,8 +519,7 @@ [:stage="vertex";apiResource="texture_depth_2d-array_false"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="vertex";apiResource="texture_depth_2d_false"] @@ -539,8 +541,7 @@ [:stage="vertex";apiResource="texture_depth_cube_false"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="vertex";apiResource="texture_float_1d_false"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/vertex_state/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/vertex_state/cts.https.html.ini index 7b74c6611a95..a26079f1eeb4 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/vertex_state/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/render_pipeline/vertex_state/cts.https.html.ini @@ -28,22 +28,19 @@ [:format="float16x2"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:format="float16x4"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:format="float32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:format="float32x2"] @@ -131,8 +128,7 @@ [:format="snorm16x4"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:format="snorm8x2"] @@ -174,7 +170,8 @@ expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:format="uint32x3"] expected: @@ -2431,7 +2428,8 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "mac": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, FAIL] [:format="unorm8x2";arrayStrideVariant={"mult":1,"add":0};offsetVariant={"mult":1,"add":-6}] expected: @@ -2443,38 +2441,44 @@ expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "mac": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, FAIL] [:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":2}] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL if os == "linux": FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":0,"add":4}] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "mac": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, FAIL] [:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-4}] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "mac": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, FAIL] [:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-6}] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL if os == "linux": FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:format="unorm8x4";arrayStrideVariant={"mult":0,"add":256};offsetVariant={"mult":1,"add":-8}] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/buffer/in_pass_encoder/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/buffer/in_pass_encoder/cts.https.html.ini index 4a8f0930ec49..5544144b69db 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/buffer/in_pass_encoder/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/buffer/in_pass_encoder/cts.https.html.ini @@ -66,7 +66,7 @@ [:usage0AccessibleInDispatch=false;usage1AccessibleInDispatch=false;dispatchBeforeUsage1=true] expected: - if os == "win" and debug: FAIL + if os == "win" and debug: [PASS, FAIL] [:usage0AccessibleInDispatch=false;usage1AccessibleInDispatch=true;dispatchBeforeUsage1=false] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_pass_encoder/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_pass_encoder/cts.https.html.ini index 3e7a2e8647de..0b0b853a1af4 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_pass_encoder/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_pass_encoder/cts.https.html.ini @@ -910,7 +910,7 @@ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=false;setBindGroupsOrder="reversed";setPipeline="none";callDrawOrDispatch=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="after";callDrawOrDispatch=false] expected: @@ -925,11 +925,11 @@ [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="before";callDrawOrDispatch=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:compute=false;readOnlyUsage="sampled-texture";writableUsage="readwrite-storage-texture";useBindGroup0=false;useBindGroup1=true;setBindGroupsOrder="common";setPipeline="middle";callDrawOrDispatch=false] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_common/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_common/cts.https.html.ini index f0d0c6bb5edf..55cc9dc4b84f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_common/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/resource_usages/texture/in_render_common/cts.https.html.ini @@ -450,7 +450,8 @@ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="storage";inSamePass=false] expected: @@ -534,10 +535,12 @@ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=0;bgLayerCount=1;bgUsage="texture";inSamePass=false] @@ -550,10 +553,12 @@ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=1;bgUsage="texture";inSamePass=false] @@ -566,10 +571,12 @@ [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=false] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="sampled-texture";inSamePass=true] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=0;colorAttachmentLayer=1;bgLevel=1;bgLevelCount=2;bgLayer=1;bgLayerCount=2;bgUsage="texture";inSamePass=false] @@ -583,37 +590,39 @@ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false] expected: if os == "win": FAIL - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=true] expected: if os == "win": FAIL - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=false] expected: if os == "win": FAIL - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="readwrite-storage-texture";inSamePass=true] expected: if os == "win": FAIL - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="storage";inSamePass=false] @@ -634,11 +643,13 @@ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=false] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=0;bgLayerCount=1;bgUsage="writeonly-storage-texture";inSamePass=true] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="readonly-storage-texture";inSamePass=false] @@ -667,11 +678,13 @@ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=false] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=0;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -844,8 +857,7 @@ [:colorAttachmentLevel=1;colorAttachmentLayer=0;bgLevel=1;bgLevelCount=1;bgLayer=1;bgLayerCount=1;bgUsage="sampled-texture";inSamePass=true] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1578,74 +1590,98 @@ [:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true] [:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false] + expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=true] + expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=false] + expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="stencil-only";inSamePass=true] + expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false] + expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true] + expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":0,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true] + expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=true] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=false] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="depth-only";aspect1="stencil-only";inSamePass=true] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=false] expected: @@ -1655,7 +1691,8 @@ [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="depth-only";inSamePass=true] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":0,"count":1};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false] expected: @@ -1938,13 +1975,15 @@ [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=false] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":1};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="depth-only";aspect1="depth-only";inSamePass=false] @@ -1973,7 +2012,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=false] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="depth-only";inSamePass=true] expected: @@ -1986,7 +2029,11 @@ expected: [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":1};view1Levels={"base":1,"count":2};view1Layers={"base":1,"count":2};aspect0="stencil-only";aspect1="stencil-only";inSamePass=true] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:view0Levels={"base":0,"count":1};view0Layers={"base":1,"count":2};view1Levels={"base":0,"count":1};view1Layers={"base":0,"count":1};aspect0="depth-only";aspect1="depth-only";inSamePass=false] expected: [TIMEOUT, NOTRUN] @@ -4969,50 +5016,62 @@ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="readwrite-storage-texture"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="writeonly-storage-texture"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readonly-storage-texture"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="readwrite-storage-texture"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="sampled-texture"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="readwrite-storage-texture";bgUsage1="writeonly-storage-texture"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -5059,14 +5118,26 @@ if os == "win": [PASS, FAIL] [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readonly-storage-texture"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="readwrite-storage-texture"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="sampled-texture"] + expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"] + expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"] expected: @@ -5127,21 +5198,25 @@ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readonly-storage-texture"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="readwrite-storage-texture"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="sampled-texture"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="sampled-texture";bgUsage1="writeonly-storage-texture"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] @@ -5200,7 +5275,8 @@ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:bg0Levels={"base":0,"count":1};bg0Layers={"base":0,"count":1};bg1Levels={"base":1,"count":2};bg1Layers={"base":0,"count":1};bgUsage0="readonly-storage-texture";bgUsage1="sampled-texture"] expected: @@ -5578,7 +5654,8 @@ [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":1};bgUsage0="writeonly-storage-texture";bgUsage1="writeonly-storage-texture"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:bg0Levels={"base":0,"count":1};bg0Layers={"base":1,"count":1};bg1Levels={"base":0,"count":1};bg1Layers={"base":1,"count":2};bgUsage0="readonly-storage-texture";bgUsage1="readonly-storage-texture"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html.ini index 84ce17579d99..b30171db1020 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/shader_module/entry_point/cts.https.html.ini @@ -350,6 +350,8 @@ [cts.https.html?q=webgpu:api,validation,shader_module,entry_point:fragment_undefined_entry_point_and_extra_stage:*] + expected: + if os == "linux" and not debug: [OK, CRASH] [:isAsync=false;extraShaderModuleStage="compute"] [:isAsync=false;extraShaderModuleStage="fragment"] @@ -561,6 +563,8 @@ [cts.https.html?q=webgpu:api,validation,shader_module,entry_point:vertex_undefined_entry_point_and_extra_stage:*] + expected: + if os == "linux" and not debug: [OK, CRASH] [:isAsync=false;extraShaderModuleStage="compute"] [:isAsync=false;extraShaderModuleStage="fragment"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/state/device_lost/destroy/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/state/device_lost/destroy/cts.https.html.ini index 5aacfac07f54..a8e784d1c7ff 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/state/device_lost/destroy/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/api/validation/state/device_lost/destroy/cts.https.html.ini @@ -1524,6 +1524,7 @@ expected: if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:entry={"sampler":{"type":"filtering"}};awaitLost=false] expected: [FAIL, TIMEOUT, NOTRUN] @@ -12590,6 +12591,7 @@ expected: if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="bc1-rgba-unorm-srgb";usageType="texture";usageCopy="src";awaitLost=false] expected: [PASS, TIMEOUT, NOTRUN] @@ -15076,11 +15078,13 @@ expected: if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="r8unorm";usageType="texture";usageCopy="src-dest";awaitLost=true] expected: if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="rg11b10ufloat";usageType="texture";usageCopy="dst";awaitLost=false] expected: @@ -19164,6 +19168,7 @@ expected: if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:format="bc4-r-snorm";awaitLost=false] expected: [PASS, TIMEOUT, NOTRUN] @@ -19425,15 +19430,10 @@ expected: [PASS, TIMEOUT, NOTRUN] [:format="rg8snorm";awaitLost=false] - expected: - if os == "win": [PASS, TIMEOUT, NOTRUN] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:format="rg8snorm";awaitLost=true] - expected: - if os == "win": [PASS, TIMEOUT, NOTRUN] - if os == "linux": [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:format="rg8uint";awaitLost=false] expected: [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html.ini index 8f88d7f1bd65..065e48b6fa28 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/compat/api/validation/createBindGroupLayout/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:compat,api,validation,createBindGroupLayout:unsupportedStorageTextureFormats:*] + expected: + if os == "mac": SKIP [:format="rg32float"] [:format="rg32sint"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html.ini index 21b45b0a2a3e..7a09738f604c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/matrix/index/cts.https.html.ini @@ -75,7 +75,11 @@ [cts.https.html?q=webgpu:shader,execution,expression,access,matrix,index:concrete_float_column:*] - expected: TIMEOUT + expected: + if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [OK, TIMEOUT] + if os == "linux": TIMEOUT + if os == "mac": TIMEOUT [:inputSource="const";elementType="f16";indexType="i32";columns=2;rows=2] expected: if os == "mac": FAIL @@ -522,14 +526,12 @@ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=4;rows=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=4;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=4;rows=4] @@ -552,28 +554,34 @@ [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=2;rows=4] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=3;rows=2] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=3;rows=3] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=3;rows=4] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=4;rows=2] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=4;rows=3] @@ -584,7 +592,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=4;rows=4] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";indexType="i32";columns=2;rows=2] expected: @@ -767,7 +779,11 @@ [cts.https.html?q=webgpu:shader,execution,expression,access,matrix,index:concrete_float_element:*] - expected: TIMEOUT + expected: + if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [OK, TIMEOUT] + if os == "linux": TIMEOUT + if os == "mac": TIMEOUT [:inputSource="const";elementType="f16";indexType="i32";columns=2;rows=2] expected: if os == "mac": FAIL @@ -1186,22 +1202,22 @@ [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=2;rows=3] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=2;rows=4] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=3;rows=2] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=3;rows=3] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="i32";columns=3;rows=4] @@ -1274,7 +1290,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";elementType="f32";indexType="u32";columns=4;rows=4] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";indexType="i32";columns=2;rows=2] expected: @@ -1349,8 +1369,12 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";indexType="i32";columns=2;rows=2] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";indexType="i32";columns=2;rows=3] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";indexType="i32";columns=2;rows=4] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html.ini index 4eb504f9e6b1..d28c5ed195dd 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/components/cts.https.html.ini @@ -59,7 +59,12 @@ [cts.https.html?q=webgpu:shader,execution,expression,access,vector,components:concrete_scalar:*] - expected: TIMEOUT + expected: + if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [TIMEOUT, CRASH] + if os == "linux": TIMEOUT + if os == "mac" and debug: [TIMEOUT, CRASH] + if os == "mac" and not debug: TIMEOUT [:inputSource="const";elementType="bool";width=2;components="rgba"] expected: if os == "win" and debug: FAIL @@ -346,6 +351,7 @@ [:inputSource="storage_r";elementType="i32";width=2;components="rgba"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -353,6 +359,7 @@ [:inputSource="storage_r";elementType="i32";width=2;components="xyzw"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -360,6 +367,7 @@ [:inputSource="storage_r";elementType="i32";width=3;components="rgba"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -367,6 +375,7 @@ [:inputSource="storage_r";elementType="i32";width=3;components="xyzw"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -509,14 +518,14 @@ [:inputSource="uniform";elementType="bool";width=2;components="rgba"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="bool";width=2;components="xyzw"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -524,6 +533,7 @@ [:inputSource="uniform";elementType="bool";width=3;components="rgba"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -531,6 +541,7 @@ [:inputSource="uniform";elementType="bool";width=3;components="xyzw"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -538,6 +549,7 @@ [:inputSource="uniform";elementType="bool";width=4;components="rgba"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -545,75 +557,80 @@ [:inputSource="uniform";elementType="bool";width=4;components="xyzw"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";width=2;components="rgba"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";width=2;components="xyzw"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";width=3;components="rgba"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";width=3;components="xyzw"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";width=4;components="rgba"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";width=4;components="xyzw"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";width=2;components="rgba"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";width=2;components="xyzw"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";width=3;components="rgba"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";width=3;components="xyzw"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";width=4;components="rgba"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";width=4;components="xyzw"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -640,35 +657,33 @@ [:inputSource="uniform";elementType="i32";width=4;components="xyzw"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="u32";width=2;components="rgba"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="u32";width=2;components="xyzw"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="u32";width=3;components="rgba"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="u32";width=3;components="xyzw"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="u32";width=4;components="rgba"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="u32";width=4;components="xyzw"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html.ini index 46b5ca45c2b1..00fc4641bf0c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/access/vector/index/cts.https.html.ini @@ -250,16 +250,19 @@ [:inputSource="storage_r";elementType="bool";indexType="i32";width=2] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="bool";indexType="i32";width=3] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="bool";indexType="i32";width=4] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -270,77 +273,92 @@ if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="bool";indexType="u32";width=3] + expected: + if os == "win": [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] + + [:inputSource="storage_r";elementType="bool";indexType="u32";width=4] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] - [:inputSource="storage_r";elementType="bool";indexType="u32";width=4] - expected: [TIMEOUT, NOTRUN] - [:inputSource="storage_r";elementType="f16";indexType="i32";width=2] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f16";indexType="i32";width=3] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f16";indexType="i32";width=4] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f16";indexType="u32";width=2] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f16";indexType="u32";width=3] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f16";indexType="u32";width=4] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f32";indexType="i32";width=2] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f32";indexType="i32";width=3] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f32";indexType="i32";width=4] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f32";indexType="u32";width=2] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f32";indexType="u32";width=3] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="f32";indexType="u32";width=4] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -381,29 +399,30 @@ [:inputSource="storage_r";elementType="u32";indexType="i32";width=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="u32";indexType="i32";width=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="u32";indexType="u32";width=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="u32";indexType="u32";width=3] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";elementType="u32";indexType="u32";width=4] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -518,18 +537,22 @@ [:inputSource="uniform";elementType="bool";indexType="i32";width=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="bool";indexType="i32";width=3] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="bool";indexType="i32";width=4] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="bool";indexType="u32";width=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="bool";indexType="u32";width=3] @@ -544,32 +567,37 @@ [:inputSource="uniform";elementType="f16";indexType="i32";width=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";indexType="i32";width=3] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";indexType="i32";width=4] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";indexType="u32";width=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";indexType="u32";width=3] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f16";indexType="u32";width=4] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";indexType="i32";width=2] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";indexType="i32";width=3] expected: @@ -581,14 +609,17 @@ [:inputSource="uniform";elementType="f32";indexType="u32";width=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";indexType="u32";width=3] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="f32";indexType="u32";width=4] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="i32";indexType="i32";width=2] @@ -613,7 +644,7 @@ [:inputSource="uniform";elementType="u32";indexType="u32";width=2] expected: - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";elementType="u32";indexType="u32";width=3] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_comparison/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_comparison/cts.https.html.ini index c1593a4a065b..f5804ba21ca8 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_comparison/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_comparison/cts.https.html.ini @@ -1,18 +1,26 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:equals:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] - expected: FAIL + expected: + if os == "mac": FAIL [:inputSource="const";vectorize=2] - expected: FAIL + expected: + if os == "mac": FAIL [:inputSource="const";vectorize=3] - expected: FAIL + expected: + if os == "mac": FAIL [:inputSource="const";vectorize=4] - expected: FAIL + expected: + if os == "mac": FAIL [cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:greater_equals:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: if os == "win" and debug: [PASS, FAIL] @@ -33,6 +41,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:greater_than:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: if os == "win" and debug: [PASS, FAIL] @@ -53,6 +63,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:less_equals:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: if os == "win" and debug: [PASS, FAIL] @@ -73,6 +85,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:less_than:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: if os == "win" and debug: [PASS, FAIL] @@ -93,14 +107,20 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,af_comparison:not_equals:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] - expected: FAIL + expected: + if os == "mac": FAIL [:inputSource="const";vectorize=2] - expected: FAIL + expected: + if os == "mac": FAIL [:inputSource="const";vectorize=3] - expected: FAIL + expected: + if os == "mac": FAIL [:inputSource="const";vectorize=4] - expected: FAIL + expected: + if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_addition/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_addition/cts.https.html.ini index 2af762daad53..077e00fe6e95 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_addition/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_addition/cts.https.html.ini @@ -5,19 +5,30 @@ expected: FAIL [:inputSource="const";cols=2;rows=3] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:inputSource="const";cols=2;rows=4] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:inputSource="const";cols=3;rows=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:inputSource="const";cols=3;rows=3] expected: if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="const";cols=3;rows=4] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_subtraction/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_subtraction/cts.https.html.ini index 65db8d21a30b..dd162546add2 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_subtraction/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/af_matrix_subtraction/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,af_matrix_subtraction:matrix:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const";cols=2;rows=2] expected: FAIL @@ -24,4 +26,8 @@ expected: FAIL [:inputSource="const";cols=4;rows=4] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html.ini index cb3b5a5ef5a3..9d3aab49cb8a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/ai_comparison/cts.https.html.ini @@ -1,15 +1,11 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,ai_comparison:equals:*] [:inputSource="const";vectorize="_undef_"] - expected: FAIL [:inputSource="const";vectorize=2] - expected: FAIL [:inputSource="const";vectorize=3] - expected: FAIL [:inputSource="const";vectorize=4] - expected: FAIL [cts.https.html?q=webgpu:shader,execution,expression,binary,ai_comparison:greater_equals:*] @@ -54,13 +50,9 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,ai_comparison:not_equals:*] [:inputSource="const";vectorize="_undef_"] - expected: FAIL [:inputSource="const";vectorize=2] - expected: FAIL [:inputSource="const";vectorize=3] - expected: FAIL [:inputSource="const";vectorize=4] - expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise/cts.https.html.ini index 3e4b56472629..cd86deb25c2e 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise/cts.https.html.ini @@ -150,22 +150,22 @@ [:type="i32";inputSource="storage_rw";vectorize="_undef_"] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=2] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=3] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=4] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="uniform";vectorize="_undef_"] @@ -187,28 +187,32 @@ [:type="u32";inputSource="const";vectorize="_undef_"] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=2] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=3] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=4] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -263,7 +267,7 @@ [:type="u32";inputSource="uniform";vectorize="_undef_"] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL @@ -289,7 +293,7 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise:bitwise_and_compound:*] expected: if os == "win": TIMEOUT - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] [:type="i32";inputSource="const";vectorize="_undef_"] expected: FAIL @@ -324,15 +328,15 @@ [:type="i32";inputSource="storage_rw";vectorize=2] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=3] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=4] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="uniform";vectorize="_undef_"] @@ -354,28 +358,32 @@ [:type="u32";inputSource="const";vectorize="_undef_"] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=2] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=3] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=4] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -458,6 +466,7 @@ expected: if os == "win": TIMEOUT if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac" and debug: TIMEOUT if os == "mac" and not debug: [OK, TIMEOUT] [:type="abstract-int";inputSource="const";vectorize="_undef_"] @@ -497,33 +506,33 @@ [:type="abstract-int";inputSource="storage_r";vectorize="_undef_"] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="storage_r";vectorize=2] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="storage_r";vectorize=3] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="storage_r";vectorize=4] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="storage_rw";vectorize="_undef_"] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] @@ -531,6 +540,7 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] @@ -538,6 +548,7 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] @@ -545,31 +556,32 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="uniform";vectorize="_undef_"] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="uniform";vectorize=2] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="uniform";vectorize=3] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="uniform";vectorize=4] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="const";vectorize="_undef_"] @@ -603,22 +615,22 @@ [:type="i32";inputSource="storage_rw";vectorize="_undef_"] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=2] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=3] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=4] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="uniform";vectorize="_undef_"] @@ -640,28 +652,32 @@ [:type="u32";inputSource="const";vectorize="_undef_"] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=2] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=3] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=4] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -716,14 +732,13 @@ [:type="u32";inputSource="uniform";vectorize="_undef_"] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:type="u32";inputSource="uniform";vectorize=2] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="uniform";vectorize=3] @@ -741,7 +756,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise:bitwise_exclusive_or_compound:*] expected: - if os == "win": TIMEOUT + if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [OK, TIMEOUT] if os == "linux" and debug: [OK, TIMEOUT] [:type="i32";inputSource="const";vectorize="_undef_"] expected: FAIL @@ -822,7 +838,8 @@ [:type="u32";inputSource="const";vectorize=3] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -915,6 +932,7 @@ if os == "linux" and debug: TIMEOUT if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac" and debug: TIMEOUT + if os == "mac" and not debug: [OK, TIMEOUT] [:type="abstract-int";inputSource="const";vectorize="_undef_"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] @@ -957,21 +975,21 @@ if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="storage_r";vectorize=3] expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="storage_r";vectorize=4] expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="storage_rw";vectorize="_undef_"] expected: @@ -979,6 +997,7 @@ if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="storage_rw";vectorize=2] expected: @@ -986,6 +1005,7 @@ if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="storage_rw";vectorize=3] expected: @@ -993,6 +1013,7 @@ if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="storage_rw";vectorize=4] expected: @@ -1000,6 +1021,7 @@ if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="uniform";vectorize="_undef_"] expected: @@ -1012,6 +1034,7 @@ if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:type="abstract-int";inputSource="uniform";vectorize=3] expected: @@ -1053,27 +1076,27 @@ [:type="i32";inputSource="storage_r";vectorize=4] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize="_undef_"] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=2] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=3] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="storage_rw";vectorize=4] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="i32";inputSource="uniform";vectorize="_undef_"] @@ -1095,28 +1118,32 @@ [:type="u32";inputSource="const";vectorize="_undef_"] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=2] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=3] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=4] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -1171,21 +1198,18 @@ [:type="u32";inputSource="uniform";vectorize="_undef_"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:type="u32";inputSource="uniform";vectorize=2] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="uniform";vectorize=3] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="uniform";vectorize=4] @@ -1198,7 +1222,7 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise:bitwise_or_compound:*] expected: if os == "win": TIMEOUT - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] [:type="i32";inputSource="const";vectorize="_undef_"] expected: FAIL @@ -1263,32 +1287,28 @@ [:type="u32";inputSource="const";vectorize="_undef_"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=2] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=3] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:type="u32";inputSource="const";vectorize=4] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -1343,21 +1363,18 @@ [:type="u32";inputSource="uniform";vectorize="_undef_"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:type="u32";inputSource="uniform";vectorize=2] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="uniform";vectorize=3] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="uniform";vectorize=4] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise_shift/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise_shift/cts.https.html.ini index cad8c51c6242..bf6131af7c86 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise_shift/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/bitwise_shift/cts.https.html.ini @@ -1,6 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise_shift:shift_left_concrete:*] expected: - if os == "win" and debug: TIMEOUT + if os == "win": TIMEOUT if os == "linux" and debug: [OK, TIMEOUT] [:type="i32";inputSource="const";vectorize="_undef_"] expected: FAIL @@ -86,26 +86,33 @@ [:type="u32";inputSource="storage_r";vectorize=3] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_r";vectorize=4] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize="_undef_"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize=2] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize=3] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize=4] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="uniform";vectorize="_undef_"] @@ -127,132 +134,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise_shift:shift_left_concrete_compound:*] - expected: - if os == "win" and debug: TIMEOUT - [:type="i32";inputSource="const";vectorize="_undef_"] - expected: FAIL - - [:type="i32";inputSource="const";vectorize=2] - expected: FAIL - - [:type="i32";inputSource="const";vectorize=3] - expected: FAIL - - [:type="i32";inputSource="const";vectorize=4] - expected: FAIL - - [:type="i32";inputSource="storage_r";vectorize="_undef_"] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="i32";inputSource="storage_r";vectorize=2] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="i32";inputSource="storage_r";vectorize=3] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="i32";inputSource="storage_r";vectorize=4] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="i32";inputSource="storage_rw";vectorize="_undef_"] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="i32";inputSource="storage_rw";vectorize=2] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="i32";inputSource="storage_rw";vectorize=3] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="i32";inputSource="storage_rw";vectorize=4] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="i32";inputSource="uniform";vectorize="_undef_"] - expected: - if os == "win" and debug: [PASS, FAIL] - if os == "mac": FAIL - - [:type="i32";inputSource="uniform";vectorize=2] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="i32";inputSource="uniform";vectorize=3] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="i32";inputSource="uniform";vectorize=4] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="u32";inputSource="const";vectorize="_undef_"] - expected: FAIL - - [:type="u32";inputSource="const";vectorize=2] - expected: FAIL - - [:type="u32";inputSource="const";vectorize=3] - expected: FAIL - - [:type="u32";inputSource="const";vectorize=4] - expected: FAIL - - [:type="u32";inputSource="storage_r";vectorize="_undef_"] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="u32";inputSource="storage_r";vectorize=2] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="u32";inputSource="storage_r";vectorize=3] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="u32";inputSource="storage_r";vectorize=4] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="u32";inputSource="storage_rw";vectorize="_undef_"] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="u32";inputSource="storage_rw";vectorize=2] - expected: - if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - - [:type="u32";inputSource="storage_rw";vectorize=3] - expected: - if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - - [:type="u32";inputSource="storage_rw";vectorize=4] - expected: - if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - - [:type="u32";inputSource="uniform";vectorize="_undef_"] - expected: - if os == "win" and debug: [PASS, FAIL] - if os == "mac": FAIL - - [:type="u32";inputSource="uniform";vectorize=2] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="u32";inputSource="uniform";vectorize=3] - expected: - if os == "win" and debug: [PASS, FAIL] - - [:type="u32";inputSource="uniform";vectorize=4] - expected: - if os == "win" and debug: [PASS, FAIL] - - -[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise_shift:shift_right_concrete:*] expected: if os == "win": TIMEOUT if os == "linux" and debug: [OK, TIMEOUT] @@ -344,27 +225,29 @@ [:type="u32";inputSource="storage_r";vectorize=4] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize="_undef_"] expected: if os == "win" and debug: [PASS, FAIL] - if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize=2] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize=3] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize=4] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="uniform";vectorize="_undef_"] @@ -385,9 +268,167 @@ if os == "win" and debug: [PASS, FAIL] +[cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise_shift:shift_right_concrete:*] + expected: + if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [OK, TIMEOUT] + if os == "linux" and debug: [OK, TIMEOUT] + [:type="i32";inputSource="const";vectorize="_undef_"] + expected: FAIL + + [:type="i32";inputSource="const";vectorize=2] + expected: FAIL + + [:type="i32";inputSource="const";vectorize=3] + expected: FAIL + + [:type="i32";inputSource="const";vectorize=4] + expected: FAIL + + [:type="i32";inputSource="storage_r";vectorize="_undef_"] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="i32";inputSource="storage_r";vectorize=2] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="i32";inputSource="storage_r";vectorize=3] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="i32";inputSource="storage_r";vectorize=4] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="i32";inputSource="storage_rw";vectorize="_undef_"] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="i32";inputSource="storage_rw";vectorize=2] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="i32";inputSource="storage_rw";vectorize=3] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="i32";inputSource="storage_rw";vectorize=4] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="i32";inputSource="uniform";vectorize="_undef_"] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "mac": FAIL + + [:type="i32";inputSource="uniform";vectorize=2] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="i32";inputSource="uniform";vectorize=3] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="i32";inputSource="uniform";vectorize=4] + expected: + if os == "win" and debug: [PASS, FAIL] + + [:type="u32";inputSource="const";vectorize="_undef_"] + expected: FAIL + + [:type="u32";inputSource="const";vectorize=2] + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL + + [:type="u32";inputSource="const";vectorize=3] + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL + + [:type="u32";inputSource="const";vectorize=4] + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL + + [:type="u32";inputSource="storage_r";vectorize="_undef_"] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:type="u32";inputSource="storage_r";vectorize=2] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:type="u32";inputSource="storage_r";vectorize=3] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:type="u32";inputSource="storage_r";vectorize=4] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:type="u32";inputSource="storage_rw";vectorize="_undef_"] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:type="u32";inputSource="storage_rw";vectorize=2] + expected: + if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:type="u32";inputSource="storage_rw";vectorize=3] + expected: + if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:type="u32";inputSource="storage_rw";vectorize=4] + expected: + if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:type="u32";inputSource="uniform";vectorize="_undef_"] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": FAIL + + [:type="u32";inputSource="uniform";vectorize=2] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:type="u32";inputSource="uniform";vectorize=3] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:type="u32";inputSource="uniform";vectorize=4] + expected: + if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [cts.https.html?q=webgpu:shader,execution,expression,binary,bitwise_shift:shift_right_concrete_compound:*] expected: - if os == "win": TIMEOUT + if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [OK, TIMEOUT] + if os == "linux" and debug: [OK, TIMEOUT] [:type="i32";inputSource="const";vectorize="_undef_"] expected: FAIL @@ -464,38 +505,45 @@ [:type="u32";inputSource="storage_r";vectorize="_undef_"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_r";vectorize=2] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_r";vectorize=3] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_r";vectorize=4] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize="_undef_"] expected: - if os == "win" and debug: [PASS, FAIL] - if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize=2] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize=3] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="storage_rw";vectorize=4] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";inputSource="uniform";vectorize="_undef_"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_addition/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_addition/cts.https.html.ini index 27bb48a5a4fb..2979348cbad7 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_addition/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_addition/cts.https.html.ini @@ -114,7 +114,8 @@ [:inputSource="storage_rw";cols=3;rows=3] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";cols=3;rows=4] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication/cts.https.html.ini index 9b9ba5fb1404..5a454de2a41c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_scalar_multiplication/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_scalar_multiplication:matrix_scalar:*] + expected: + if os == "mac": SKIP [:inputSource="const";cols=2;rows=2] expected: if os == "win" and debug: [PASS, FAIL] @@ -181,6 +183,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_scalar_multiplication:matrix_scalar_compound:*] + expected: + if os == "mac": SKIP [:inputSource="const";cols=2;rows=2] expected: if os == "win" and debug: [PASS, FAIL] @@ -363,6 +367,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,f16_matrix_scalar_multiplication:scalar_matrix:*] + expected: + if os == "mac": SKIP [:inputSource="const";cols=2;rows=2] expected: if os == "win" and debug: [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_subtraction/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_subtraction/cts.https.html.ini index 92ac590463f4..1d819fb53d33 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_subtraction/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_subtraction/cts.https.html.ini @@ -104,12 +104,14 @@ [:inputSource="storage_rw";cols=2;rows=4] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";cols=3;rows=2] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";cols=3;rows=3] expected: @@ -303,7 +305,8 @@ [:inputSource="storage_rw";cols=3;rows=3] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";cols=3;rows=4] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication/cts.https.html.ini index 9052c2ff95c1..b5b03f764aab 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_matrix_vector_multiplication/cts.https.html.ini @@ -257,7 +257,8 @@ [:inputSource="storage_r";cols=2;rows=3] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=2;rows=4] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_remainder/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_remainder/cts.https.html.ini index c64315924a8d..4b26feb00440 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_remainder/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f16_remainder/cts.https.html.ini @@ -21,84 +21,102 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,f16_remainder:scalar_compound:*] + expected: + if os == "linux" and not debug: [OK, TIMEOUT] [:inputSource="const";vectorize="_undef_"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="const";vectorize=2] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="const";vectorize=3] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="const";vectorize=4] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="storage_r";vectorize="_undef_"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="storage_r";vectorize=2] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="storage_r";vectorize=3] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="storage_r";vectorize=4] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="storage_rw";vectorize="_undef_"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="storage_rw";vectorize=2] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="storage_rw";vectorize=3] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="storage_rw";vectorize=4] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="uniform";vectorize="_undef_"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="uniform";vectorize=2] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="uniform";vectorize=3] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="uniform";vectorize=4] expected: if os == "win": [PASS, FAIL] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_addition/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_addition/cts.https.html.ini index 4c2e674af752..f36605e8dfba 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_addition/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_addition/cts.https.html.ini @@ -105,7 +105,8 @@ [:inputSource="storage_r";cols=4;rows=3] expected: - if os == "win": [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] @@ -157,13 +158,15 @@ [:inputSource="storage_rw";cols=4;rows=2] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=4;rows=3] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=4;rows=4] @@ -178,27 +181,27 @@ [:inputSource="uniform";cols=2;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=2;rows=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=4;rows=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=4;rows=3] expected: @@ -215,7 +218,7 @@ expected: if os == "win": TIMEOUT if os == "linux": TIMEOUT - if os == "mac" and debug: TIMEOUT + if os == "mac": [OK, TIMEOUT] [:inputSource="const";cols=2;rows=2] expected: FAIL @@ -379,7 +382,7 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=2;rows=2] expected: @@ -391,15 +394,15 @@ [:inputSource="uniform";cols=2;rows=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=4] expected: @@ -408,6 +411,7 @@ [:inputSource="uniform";cols=4;rows=2] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=4;rows=3] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication/cts.https.html.ini index b28f021ccedb..cc5b44868426 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_scalar_multiplication/cts.https.html.ini @@ -66,37 +66,45 @@ [:inputSource="storage_r";cols=2;rows=2] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=2;rows=3] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=2;rows=4] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=2] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=3] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=4] expected: - if os == "win": [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=4;rows=2] expected: - if os == "win": [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] @@ -113,14 +121,14 @@ if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=2;rows=2] expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=2;rows=3] expected: @@ -156,10 +164,7 @@ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=4;rows=2] - expected: - if os == "win": [PASS, TIMEOUT, NOTRUN] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=4;rows=3] expected: [PASS, TIMEOUT, NOTRUN] @@ -174,23 +179,23 @@ [:inputSource="uniform";cols=2;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=2;rows=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=4;rows=2] expected: @@ -200,10 +205,12 @@ [:inputSource="uniform";cols=4;rows=3] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=4;rows=4] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_scalar_multiplication:matrix_scalar_compound:*] @@ -274,23 +281,27 @@ [:inputSource="storage_r";cols=2;rows=2] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=2;rows=3] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=2;rows=4] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=2] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=3] @@ -298,17 +309,21 @@ if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=4] expected: - if os == "win": [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=4;rows=2] expected: - if os == "win": [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] @@ -368,10 +383,7 @@ if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=4;rows=2] - expected: - if os == "win": [PASS, TIMEOUT, NOTRUN] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=4;rows=3] expected: [PASS, TIMEOUT, NOTRUN] @@ -386,19 +398,19 @@ [:inputSource="uniform";cols=2;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=2;rows=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=4] expected: @@ -416,6 +428,7 @@ [:inputSource="uniform";cols=4;rows=4] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_scalar_multiplication:scalar_matrix:*] @@ -486,25 +499,30 @@ [:inputSource="storage_r";cols=2;rows=2] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=2;rows=3] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=2;rows=4] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=2] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=3] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=4] expected: @@ -587,36 +605,37 @@ [:inputSource="uniform";cols=2;rows=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=2;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=2;rows=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=3;rows=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=4;rows=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=4;rows=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=4;rows=4] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_subtraction/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_subtraction/cts.https.html.ini index 11d39d903854..c68b26ff9310 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_subtraction/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_subtraction/cts.https.html.ini @@ -1,8 +1,5 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_subtraction:matrix:*] - expected: - if os == "win": [OK, TIMEOUT] - if os == "linux": [OK, TIMEOUT] - if os == "mac" and debug: [OK, TIMEOUT] + expected: [OK, TIMEOUT] [:inputSource="const";cols=2;rows=2] expected: FAIL @@ -161,7 +158,7 @@ if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=2;rows=2] expected: @@ -214,8 +211,7 @@ if os == "win": TIMEOUT if os == "linux" and debug: TIMEOUT if os == "linux" and not debug: [OK, TIMEOUT] - if os == "mac" and debug: TIMEOUT - if os == "mac" and not debug: [OK, TIMEOUT] + if os == "mac": [OK, TIMEOUT] [:inputSource="const";cols=2;rows=2] expected: FAIL @@ -226,13 +222,25 @@ expected: FAIL [:inputSource="const";cols=3;rows=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:inputSource="const";cols=3;rows=3] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:inputSource="const";cols=3;rows=4] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:inputSource="const";cols=4;rows=2] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication/cts.https.html.ini index 7a0a0c890a6e..e900760f9d12 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/f32_matrix_vector_multiplication/cts.https.html.ini @@ -92,6 +92,7 @@ if os == "win" and debug: [PASS, FAIL] if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=4] expected: @@ -211,12 +212,14 @@ [:inputSource="uniform";cols=3;rows=4] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=4;rows=2] expected: - if os == "win": [PASS, FAIL] + if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";cols=4;rows=3] @@ -302,24 +305,28 @@ if os == "win" and debug: [PASS, FAIL] if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=2;rows=3] expected: if os == "win" and debug: [PASS, FAIL] if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=2;rows=4] expected: if os == "win" and debug: [PASS, FAIL] if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=2] expected: if os == "win" and debug: [PASS, FAIL] if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=3] expected: @@ -473,7 +480,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,f32_matrix_vector_multiplication:vector_matrix_compound:*] expected: if os == "win": TIMEOUT - if os == "linux": TIMEOUT + if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac" and debug: TIMEOUT [:inputSource="const";dim=2] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_comparison/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_comparison/cts.https.html.ini index f468d760f79a..edeb434ef8b6 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_comparison/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/binary/u32_comparison/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:equals:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -49,6 +51,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:greater_equals:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -99,6 +103,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:greater_than:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -149,6 +155,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:less_equals:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -199,6 +207,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:less_than:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -249,6 +259,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,binary,u32_comparison:not_equals:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acosh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acosh/cts.https.html.ini index 705f30b051af..d050329e30f8 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acosh/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/acosh/cts.https.html.ini @@ -119,6 +119,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,acosh:f32:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -144,8 +146,12 @@ [:inputSource="storage_rw";vectorize=2] [:inputSource="storage_rw";vectorize=3] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=4] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize="_undef_"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/arrayLength/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/arrayLength/cts.https.html.ini index c97ab9f34694..399ef886ae6c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/arrayLength/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/arrayLength/cts.https.html.ini @@ -247,14 +247,12 @@ [:buffer_size=1048576;type="f32";stride=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:buffer_size=1048576;type="i32";stride=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:buffer_size=1048576;type="mat2x2%3Cf16%3E";stride=8] @@ -277,8 +275,7 @@ [:buffer_size=1048576;type="mat2x3%3Cf32%3E";stride=32] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -347,7 +344,7 @@ [:buffer_size=1048576;type="u32";stride=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:buffer_size=1048576;type="vec2%3Cf16%3E";stride=4] @@ -357,20 +354,17 @@ [:buffer_size=1048576;type="vec2%3Cf32%3E";stride=8] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:buffer_size=1048576;type="vec2%3Ci32%3E";stride=8] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:buffer_size=1048576;type="vec2%3Cu32%3E";stride=8] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:buffer_size=1048576;type="vec3%3Cf16%3E";stride=8] @@ -380,29 +374,28 @@ [:buffer_size=1048576;type="vec3%3Cf32%3E";stride=16] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:buffer_size=1048576;type="vec3%3Ci32%3E";stride=16] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:buffer_size=1048576;type="vec3%3Cu32%3E";stride=16] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:buffer_size=1048576;type="vec4%3Cf16%3E";stride=8] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:buffer_size=1048576;type="vec4%3Cf32%3E";stride=16] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -431,8 +424,7 @@ [:buffer_size=640;type="array%3Cf16,4%3E";stride=8] expected: - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:buffer_size=640;type="array%3Cf32,4%3E";stride=16] expected: @@ -547,16 +539,14 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,arrayLength:single_element:*] expected: - if os == "mac" and debug: TIMEOUT - if os == "mac" and not debug: [OK, TIMEOUT] + if os == "mac": [OK, TIMEOUT] [:type="ElemStruct";stride=4] expected: if os == "mac": [PASS, TIMEOUT, NOTRUN] [:type="ElemStruct_ExplicitPadding";stride=32] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:type="ElemStruct_ImplicitPadding";stride=16] expected: @@ -564,7 +554,8 @@ [:type="array%3Cf16,4%3E";stride=8] expected: - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:type="array%3Cf32,4%3E";stride=16] @@ -848,7 +839,7 @@ [:member_offset=20;type="mat2x2%3Cf32%3E";stride=16] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -930,7 +921,7 @@ [:member_offset=20;type="u32";stride=4] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:member_offset=20;type="vec2%3Cf16%3E";stride=4] @@ -997,27 +988,27 @@ [:member_offset=4;type="ElemStruct";stride=4] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:member_offset=4;type="ElemStruct_ExplicitPadding";stride=32] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:member_offset=4;type="ElemStruct_ImplicitPadding";stride=16] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:member_offset=4;type="array%3Cf16,4%3E";stride=8] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:member_offset=4;type="array%3Cf32,4%3E";stride=16] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:member_offset=4;type="array%3Ci32,4%3E";stride=16] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicAnd/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicAnd/cts.https.html.ini index 8bfcb0e846e0..a8bbdb0e1044 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicAnd/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicAnd/cts.https.html.ini @@ -140,6 +140,7 @@ [:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"] @@ -157,6 +158,7 @@ [:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"] expected: @@ -165,47 +167,57 @@ [:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"] @@ -283,7 +295,7 @@ [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"] @@ -376,6 +388,7 @@ [:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"] expected: @@ -389,6 +402,7 @@ [:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"] expected: @@ -496,7 +510,7 @@ expected: if os == "win" and debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak/cts.https.html.ini index 6cc0bb3b2df7..61a16b51c39c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicCompareExchangeWeak/cts.https.html.ini @@ -198,7 +198,7 @@ [:workgroupSize=2;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: if os == "win": FAIL - if os == "mac": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:workgroupSize=2;dispatchSize=8;mapId="passthrough";scalarType="u32"] expected: FAIL @@ -596,7 +596,10 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:workgroupSize=2;dispatchSize=8;mapId="remap";scalarType="u32"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: @@ -618,7 +621,8 @@ [:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicExchange/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicExchange/cts.https.html.ini index 1458e52e2593..b7e4af06718a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicExchange/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicExchange/cts.https.html.ini @@ -174,14 +174,12 @@ [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"] @@ -289,7 +287,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicExchange:exchange_storage_basic:*] expected: - if os == "linux": TIMEOUT + if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: @@ -338,8 +337,12 @@ [:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"] [:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"] expected: @@ -396,25 +399,37 @@ [:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: @@ -425,7 +440,7 @@ [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"] expected: @@ -452,12 +467,14 @@ [:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"] @@ -616,12 +633,14 @@ [:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=16;mapId="passthrough";scalarType="u32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"] @@ -633,7 +652,7 @@ [:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -649,8 +668,7 @@ [:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"] @@ -660,31 +678,28 @@ [:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"] @@ -695,12 +710,14 @@ [:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"] @@ -754,7 +771,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicExchange:exchange_workgroup_basic:*] expected: - if os == "linux": TIMEOUT + if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"] @@ -789,12 +807,20 @@ [:workgroupSize=1;dispatchSize=8;mapId="remap";scalarType="u32"] [:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="i32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=2;dispatchSize=16;mapId="passthrough";scalarType="u32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="i32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=2;dispatchSize=16;mapId="remap";scalarType="u32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=2;dispatchSize=1;mapId="passthrough";scalarType="i32"] @@ -867,6 +893,7 @@ [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"] expected: @@ -909,12 +936,14 @@ [:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"] @@ -929,57 +958,50 @@ [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicLoad/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicLoad/cts.https.html.ini index 5b6145b9ca24..3057d59a1052 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicLoad/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicLoad/cts.https.html.ini @@ -182,7 +182,7 @@ [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"] expected: @@ -308,8 +308,7 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicLoad:load_workgroup:*] expected: - if os == "linux" and debug: TIMEOUT - if os == "linux" and not debug: [OK, TIMEOUT] + if os == "linux": [OK, TIMEOUT] if os == "mac": TIMEOUT [:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"] @@ -400,14 +399,21 @@ [:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="u32"] [:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="i32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=1;mapId="remap";scalarType="u32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="passthrough";scalarType="u32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"] expected: @@ -437,31 +443,26 @@ [:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"] @@ -476,8 +477,7 @@ [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"] @@ -487,48 +487,40 @@ [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicOr/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicOr/cts.https.html.ini index bc51e99ac710..8fbf64117e69 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicOr/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicOr/cts.https.html.ini @@ -108,12 +108,12 @@ [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: @@ -145,8 +145,7 @@ [:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"] @@ -173,7 +172,7 @@ [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"] @@ -183,55 +182,49 @@ [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicOr:or_workgroup:*] expected: - if os == "linux": TIMEOUT + if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"] @@ -326,12 +319,12 @@ [:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=16;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=1;mapId="passthrough";scalarType="i32"] @@ -366,6 +359,7 @@ [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: @@ -392,7 +386,8 @@ [:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="passthrough";scalarType="u32"] @@ -403,45 +398,44 @@ [:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="i32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=16;mapId="remap";scalarType="u32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"] @@ -452,8 +446,7 @@ [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicStore/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicStore/cts.https.html.ini index e8e1ca191db3..d9fe57930b5f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicStore/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicStore/cts.https.html.ini @@ -2,6 +2,7 @@ expected: if os == "linux" and debug: TIMEOUT if os == "linux" and not debug: [OK, TIMEOUT] + if os == "mac": SKIP [:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: if os == "win" and not debug: [PASS, FAIL] @@ -217,6 +218,7 @@ [:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"] expected: if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"] expected: @@ -225,26 +227,32 @@ [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"] expected: if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"] expected: if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"] expected: if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"] expected: if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"] expected: if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="u32"] expected: if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: @@ -254,6 +262,7 @@ [:workgroupSize=64;dispatchSize=8;mapId="passthrough";scalarType="u32"] expected: if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="i32"] expected: @@ -263,13 +272,14 @@ [:workgroupSize=64;dispatchSize=8;mapId="remap";scalarType="u32"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicStore:store_storage_basic:*] expected: if os == "linux" and debug: TIMEOUT if os == "linux" and not debug: [OK, TIMEOUT] + if os == "mac": SKIP [:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: if os == "win" and not debug: [PASS, FAIL] @@ -485,26 +495,32 @@ [:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="i32"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="passthrough";scalarType="u32"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="i32"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=1;mapId="remap";scalarType="u32"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="i32"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="passthrough";scalarType="u32"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [TIMEOUT, NOTRUN] [:workgroupSize=64;dispatchSize=4;mapId="remap";scalarType="i32"] expected: @@ -541,6 +557,7 @@ expected: if os == "linux" and debug: TIMEOUT if os == "linux" and not debug: [OK, TIMEOUT] + if os == "mac": SKIP [:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: if os == "win" and not debug: [PASS, FAIL] @@ -815,6 +832,7 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicStore:store_workgroup_basic:*] expected: if os == "linux": TIMEOUT + if os == "mac": SKIP [:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: if os == "win" and not debug: [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicXor/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicXor/cts.https.html.ini index dc86209eff25..49a4b228433a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicXor/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/atomics/atomicXor/cts.https.html.ini @@ -225,6 +225,7 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and not debug: [PASS, FAIL] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=4;mapId="remap";scalarType="u32"] expected: @@ -235,23 +236,25 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="u32"] expected: if os == "win": [PASS, FAIL] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="i32"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="remap";scalarType="u32"] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -370,7 +373,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,atomics,atomicXor:xor_workgroup:*] expected: - if os == "linux": TIMEOUT + if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:workgroupSize=1;dispatchSize=16;mapId="passthrough";scalarType="i32"] expected: @@ -604,6 +608,7 @@ if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:workgroupSize=32;dispatchSize=8;mapId="passthrough";scalarType="i32"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html.ini index a3c5d1376c19..ad4a7f230111 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/bitcast/cts.https.html.ini @@ -140,6 +140,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:f16_to_f16:*] + expected: + if os == "mac" and debug: [OK, TIMEOUT] [:inputSource="const";vectorize="_undef_";alias=false] expected: if os == "win": [PASS, FAIL] @@ -228,37 +230,44 @@ [:inputSource="storage_rw";vectorize="_undef_";alias=true] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";vectorize=2;alias=false] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";vectorize=2;alias=true] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";vectorize=3;alias=false] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";vectorize=3;alias=true] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";vectorize=4;alias=false] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";vectorize=4;alias=true] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="uniform";vectorize="_undef_";alias=false] expected: @@ -304,6 +313,7 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:f32_to_f32:*] expected: if os == "win" and debug: [OK, TIMEOUT] + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const";vectorize="_undef_";alias=false] expected: if os == "win": FAIL @@ -391,42 +401,51 @@ [:inputSource="storage_r";vectorize=4;alias=true] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize="_undef_";alias=false] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize="_undef_";alias=true] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=2;alias=false] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=2;alias=true] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=3;alias=false] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=3;alias=true] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=4;alias=false] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=4;alias=true] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize="_undef_";alias=false] expected: @@ -573,21 +592,25 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=3;alias=false] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=3;alias=true] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=4;alias=false] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=4;alias=true] expected: @@ -747,11 +770,13 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=3;alias=true] expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=4;alias=false] expected: @@ -1295,6 +1320,7 @@ expected: if os == "win": [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, FAIL] [:inputSource="storage_r";vectorize=4;alias=false] expected: @@ -1433,321 +1459,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_f32:*] - [:inputSource="const";vectorize="_undef_";alias=false] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize="_undef_";alias=true] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=2;alias=false] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=2;alias=true] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=3;alias=false] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=3;alias=true] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=4;alias=false] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=4;alias=true] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="storage_r";vectorize="_undef_";alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize="_undef_";alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=2;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=2;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=3;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=3;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=4;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=4;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize="_undef_";alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize="_undef_";alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=2;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=2;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=3;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=3;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=4;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=4;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize="_undef_";alias=false] - expected: - if os == "win": [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="uniform";vectorize="_undef_";alias=true] - expected: - if os == "win": [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="uniform";vectorize=2;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize=2;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize=3;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize=3;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize=4;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize=4;alias=true] - expected: - if os == "win": [PASS, FAIL] - - -[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_i32:*] - expected: - if os == "mac" and debug: [OK, TIMEOUT] - [:inputSource="const";vectorize="_undef_";alias=false] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize="_undef_";alias=true] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=2;alias=false] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=2;alias=true] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=3;alias=false] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=3;alias=true] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=4;alias=false] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="const";vectorize=4;alias=true] - expected: - if os == "win": FAIL - if os == "linux" and debug: FAIL - if os == "linux" and not debug: [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="storage_r";vectorize="_undef_";alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize="_undef_";alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=2;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=2;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=3;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=3;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=4;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_r";vectorize=4;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize="_undef_";alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize="_undef_";alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=2;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=2;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=3;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=3;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=4;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="storage_rw";vectorize=4;alias=true] - expected: - if os == "win": [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - - [:inputSource="uniform";vectorize="_undef_";alias=false] - expected: - if os == "win": [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="uniform";vectorize="_undef_";alias=true] - expected: - if os == "win": [PASS, FAIL] - if os == "mac": FAIL - - [:inputSource="uniform";vectorize=2;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize=2;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize=3;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize=3;alias=true] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize=4;alias=false] - expected: - if os == "win": [PASS, FAIL] - - [:inputSource="uniform";vectorize=4;alias=true] - expected: - if os == "win": [PASS, FAIL] - - -[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_u32:*] expected: if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const";vectorize="_undef_";alias=false] @@ -1817,12 +1528,10 @@ [:inputSource="storage_r";vectorize=2;alias=false] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;alias=true] expected: if os == "win": [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=3;alias=false] expected: @@ -1919,6 +1628,371 @@ if os == "win": [PASS, FAIL] +[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_i32:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] + if os == "mac" and debug: [OK, TIMEOUT] + [:inputSource="const";vectorize="_undef_";alias=false] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize="_undef_";alias=true] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=2;alias=false] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=2;alias=true] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=3;alias=false] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=3;alias=true] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=4;alias=false] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=4;alias=true] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="storage_r";vectorize="_undef_";alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize="_undef_";alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=2;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=2;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=3;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=3;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=4;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=4;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize="_undef_";alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize="_undef_";alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=2;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=2;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=3;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=3;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=4;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=4;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="uniform";vectorize="_undef_";alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="uniform";vectorize="_undef_";alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="uniform";vectorize=2;alias=false] + expected: + if os == "win": [PASS, FAIL] + + [:inputSource="uniform";vectorize=2;alias=true] + expected: + if os == "win": [PASS, FAIL] + + [:inputSource="uniform";vectorize=3;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, FAIL] + + [:inputSource="uniform";vectorize=3;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="uniform";vectorize=4;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="uniform";vectorize=4;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + +[cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_u32:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] + if os == "mac" and debug: [OK, TIMEOUT] + [:inputSource="const";vectorize="_undef_";alias=false] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize="_undef_";alias=true] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=2;alias=false] + expected: + if os == "win": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=2;alias=true] + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=3;alias=false] + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=3;alias=true] + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=4;alias=false] + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="const";vectorize=4;alias=true] + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": FAIL + + [:inputSource="storage_r";vectorize="_undef_";alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize="_undef_";alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=2;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=2;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=3;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=3;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=4;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_r";vectorize=4;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize="_undef_";alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize="_undef_";alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=2;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=2;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=3;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=3;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=4;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="storage_rw";vectorize=4;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="uniform";vectorize="_undef_";alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": FAIL + + [:inputSource="uniform";vectorize="_undef_";alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": FAIL + + [:inputSource="uniform";vectorize=2;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="uniform";vectorize=2;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="uniform";vectorize=3;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="uniform";vectorize=3;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="uniform";vectorize=4;alias=false] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [:inputSource="uniform";vectorize=4;alias=true] + expected: + if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + + [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:u32_to_vec2h:*] [:inputSource="const";alias=false] expected: @@ -1978,6 +2052,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2f_to_vec4h:*] + expected: + if os == "mac" and debug: [OK, TIMEOUT] [:inputSource="const";alias=false] expected: if os == "win": [PASS, FAIL] @@ -2006,7 +2082,8 @@ [:inputSource="storage_rw";alias=true] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="uniform";alias=false] expected: @@ -2146,6 +2223,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,bitcast:vec2i_to_vec4h:*] + expected: + if os == "mac" and debug: [OK, TIMEOUT] [:inputSource="const";alias=false] expected: if os == "win": [PASS, FAIL] @@ -2169,12 +2248,14 @@ [:inputSource="storage_rw";alias=false] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";alias=true] expected: if os == "win": [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="uniform";alias=false] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/clamp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/clamp/cts.https.html.ini index 72a603586fe3..5a98dea1505e 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/clamp/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/clamp/cts.https.html.ini @@ -115,6 +115,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,clamp:f16:*] + expected: + if os == "mac" and debug: [OK, TIMEOUT] [:inputSource="const";vectorize="_undef_"] expected: if os == "win" and debug: [PASS, FAIL] @@ -168,12 +170,14 @@ [:inputSource="storage_rw";vectorize=3] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="storage_rw";vectorize=4] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="uniform";vectorize="_undef_"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countLeadingZeros/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countLeadingZeros/cts.https.html.ini index 0f2b88cdf5cd..01a998b5ba9e 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countLeadingZeros/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/countLeadingZeros/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,countLeadingZeros:i32:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -29,11 +31,16 @@ [:inputSource="storage_rw";vectorize=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, FAIL] [:inputSource="storage_rw";vectorize=3] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=4] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize="_undef_"] expected: @@ -49,6 +56,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,countLeadingZeros:u32:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -72,18 +81,26 @@ [:inputSource="storage_r";vectorize=3] [:inputSource="storage_r";vectorize=4] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize="_undef_"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, FAIL] [:inputSource="storage_rw";vectorize=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, FAIL] [:inputSource="storage_rw";vectorize=3] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=4] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize="_undef_"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cross/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cross/cts.https.html.ini index 8336bb22aae8..6abfa737a0bf 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cross/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/cross/cts.https.html.ini @@ -1,6 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,cross:abstract_float:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const"] expected: if os == "win": FAIL @@ -29,7 +29,7 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,cross:f32:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const"] expected: if os == "win": FAIL @@ -39,12 +39,12 @@ [:inputSource="storage_r"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html.ini index c95f44dc4516..4de733cbbc71 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/distance/cts.https.html.ini @@ -231,6 +231,7 @@ [:inputSource="storage_r"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw"] @@ -242,6 +243,7 @@ [:inputSource="uniform"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL @@ -249,6 +251,7 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,distance:f32_vec2:*] expected: if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [OK, TIMEOUT] if os == "linux" and debug: TIMEOUT if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac" and debug: TIMEOUT @@ -267,6 +270,7 @@ [:inputSource="storage_rw"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform"] @@ -292,6 +296,7 @@ [:inputSource="storage_r"] expected: if os == "win" and debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html.ini index a3459db1d3c2..227bde265bcf 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dot/cts.https.html.ini @@ -1,6 +1,4 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_float_vec2:*] - expected: - if os == "linux" and debug: TIMEOUT [:inputSource="const"] expected: if os == "win": FAIL @@ -13,7 +11,11 @@ expected: if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_float_vec4:*] @@ -39,8 +41,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_int_vec3:*] - expected: - if os == "linux" and debug: TIMEOUT [:inputSource="const"] expected: if os == "win": FAIL @@ -50,8 +50,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:abstract_int_vec4:*] - expected: - if os == "linux" and debug: TIMEOUT [:inputSource="const"] expected: if os == "win": FAIL @@ -155,8 +153,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:f32_vec3:*] - expected: - if os == "linux" and debug: TIMEOUT [:inputSource="const"] expected: if os == "win": FAIL @@ -207,8 +203,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:i32_vec2:*] - expected: - if os == "linux" and debug: TIMEOUT [:inputSource="const"] expected: if os == "win": FAIL @@ -217,16 +211,10 @@ if os == "mac": FAIL [:inputSource="storage_r"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:inputSource="storage_rw"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:inputSource="uniform"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dot:i32_vec3:*] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxFine/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxFine/cts.https.html.ini index f7c03468e57d..c1b94f40403a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxFine/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/dpdxFine/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,dpdxFine:f32:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: if os == "win" and not debug: [PASS, FAIL] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/extractBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/extractBits/cts.https.html.ini index 5c5ae9fc96e7..42734c8e19ff 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/extractBits/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/extractBits/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,extractBits:i32:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const";width=1] expected: FAIL @@ -20,12 +22,20 @@ [:inputSource="storage_r";width=4] [:inputSource="storage_rw";width=1] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";width=2] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";width=3] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";width=4] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";width=1] @@ -37,6 +47,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,extractBits:u32:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const";width=1] expected: FAIL @@ -60,10 +72,16 @@ [:inputSource="storage_rw";width=1] [:inputSource="storage_rw";width=2] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";width=3] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";width=4] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";width=1] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html.ini index 944f18f56b1f..b6d2ebb6c58d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/faceForward/cts.https.html.ini @@ -179,7 +179,8 @@ [:inputSource="const"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: FAIL + if os == "linux" and not debug: [TIMEOUT, NOTRUN] if os == "mac" and debug: FAIL if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] @@ -187,16 +188,19 @@ expected: if os == "win" and debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw"] expected: if os == "win" and debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform"] expected: if os == "win" and debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fma/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fma/cts.https.html.ini index 95bf7d338ff8..487e1254c2aa 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fma/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fma/cts.https.html.ini @@ -130,19 +130,19 @@ [:inputSource="storage_r";vectorize="_undef_"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize="_undef_"] expected: @@ -163,17 +163,15 @@ if os == "linux" and debug: [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize="_undef_"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=3] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=4] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fract/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fract/cts.https.html.ini index 8e5c6895b0af..db1d9a4181bd 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fract/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/fract/cts.https.html.ini @@ -155,6 +155,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,fract:f32:*] + expected: + if os == "win" and debug: [OK, CRASH] [:inputSource="const";vectorize="_undef_"] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/inversesqrt/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/inversesqrt/cts.https.html.ini index e02425bedc66..3a135d4822da 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/inversesqrt/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/inversesqrt/cts.https.html.ini @@ -109,19 +109,37 @@ expected: FAIL [:inputSource="const";vectorize=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:inputSource="const";vectorize=3] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:inputSource="const";vectorize=4] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:inputSource="storage_r";vectorize="_undef_"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=3] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=4] expected: @@ -145,10 +163,17 @@ [:inputSource="uniform";vectorize="_undef_"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:inputSource="uniform";vectorize=2] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=3] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=4] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html.ini index 03a4cc4b811a..8114c7759477 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/length/cts.https.html.ini @@ -1,8 +1,12 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL [:inputSource="const";vectorize="_undef_"] expected: @@ -70,13 +74,19 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float_vec2:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float_vec3:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win": FAIL @@ -84,6 +94,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:abstract_float_vec4:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win": FAIL @@ -91,6 +103,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f16:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: if os == "mac": FAIL @@ -109,6 +123,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f16_vec2:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: if os == "mac": FAIL @@ -127,6 +143,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f16_vec3:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: if os == "mac": FAIL @@ -145,6 +163,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f16_vec4:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: if os == "mac": FAIL @@ -163,6 +183,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f32:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: FAIL @@ -180,6 +202,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f32_vec2:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: FAIL @@ -197,6 +221,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f32_vec3:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: FAIL @@ -214,6 +240,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,length:f32_vec4:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log2/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log2/cts.https.html.ini index be72c0b81133..53ad62ed14a5 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log2/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/log2/cts.https.html.ini @@ -174,6 +174,7 @@ [:inputSource="uniform";vectorize="_undef_"] expected: + if os == "win" and not debug: [PASS, FAIL] if os == "mac": FAIL [:inputSource="uniform";vectorize=2] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/mix/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/mix/cts.https.html.ini index 6e4707036d52..698d3d89a4b2 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/mix/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/mix/cts.https.html.ini @@ -247,7 +247,8 @@ expected: TIMEOUT [:inputSource="const";vectorize="_undef_"] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: FAIL if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: FAIL @@ -255,7 +256,8 @@ [:inputSource="const";vectorize=2] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: FAIL if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: FAIL @@ -263,7 +265,8 @@ [:inputSource="const";vectorize=3] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: FAIL if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: FAIL @@ -271,7 +274,8 @@ [:inputSource="const";vectorize=4] expected: - if os == "win": FAIL + if os == "win" and debug: FAIL + if os == "win" and not debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: FAIL if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: FAIL @@ -279,63 +283,51 @@ [:inputSource="storage_r";vectorize="_undef_"] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=3] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=4] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize="_undef_"] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=2] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=3] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=4] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize="_undef_"] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=2] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=3] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=4] expected: - if os == "linux" and not debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if not debug: [TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,mix:f32_nonmatching_vec2:*] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html.ini index 106812365b86..4faead0f702c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/normalize/cts.https.html.ini @@ -10,8 +10,14 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,normalize:abstract_float_vec3:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,normalize:abstract_float_vec4:*] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16float/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16float/cts.https.html.ini index 0f2b7087bf0a..62060eb0c677 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16float/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pack2x16float/cts.https.html.ini @@ -1,6 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,pack2x16float:pack:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const"] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pow/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pow/cts.https.html.ini index a92b41476855..ec3707bbeecd 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pow/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/pow/cts.https.html.ini @@ -1,6 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,pow:abstract_float:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const";vectorize="_undef_"] expected: if os == "win" and debug: FAIL @@ -127,7 +127,8 @@ [:inputSource="uniform";vectorize=3] expected: - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="uniform";vectorize=4] expected: @@ -169,7 +170,9 @@ [:inputSource="storage_r";vectorize="_undef_"] expected: - if debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2] expected: @@ -214,6 +217,7 @@ expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=4] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html.ini index ed08281fbe5c..09c75403ca7b 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/reflect/cts.https.html.ini @@ -1,7 +1,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float_vec2:*] expected: - if os == "win" and debug: TIMEOUT + if os == "win" and debug: [OK, TIMEOUT] if os == "linux" and debug: TIMEOUT + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] @@ -12,8 +13,9 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float_vec3:*] expected: - if os == "win" and debug: TIMEOUT + if os == "win" and debug: [OK, TIMEOUT] if os == "linux" and debug: TIMEOUT + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] @@ -24,8 +26,9 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:abstract_float_vec4:*] expected: - if os == "win" and debug: TIMEOUT + if os == "win" and debug: [OK, TIMEOUT] if os == "linux" and debug: TIMEOUT + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] @@ -35,6 +38,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:f16_vec2:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win" and not debug: [PASS, FAIL] @@ -57,6 +62,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:f16_vec3:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win" and not debug: [PASS, FAIL] @@ -79,6 +86,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,reflect:f16_vec4:*] + expected: + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win" and not debug: [PASS, FAIL] @@ -104,6 +113,7 @@ expected: if os == "win" and debug: TIMEOUT if os == "linux" and debug: TIMEOUT + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] @@ -138,6 +148,7 @@ expected: if os == "win" and debug: TIMEOUT if os == "linux" and debug: TIMEOUT + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] @@ -169,6 +180,7 @@ expected: if os == "win" and debug: TIMEOUT if os == "linux" and debug: TIMEOUT + if os == "mac": SKIP [:inputSource="const"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/select/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/select/cts.https.html.ini index 54894c6af126..7d9598cf08bc 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/select/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/select/cts.https.html.ini @@ -94,18 +94,22 @@ [:inputSource="storage_r";component="af";overload="scalar"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="af";overload="vec2"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="af";overload="vec3"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="af";overload="vec4"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="ai";overload="scalar"] @@ -130,26 +134,32 @@ [:inputSource="storage_r";component="b";overload="scalar"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="b";overload="vec2"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="b";overload="vec3"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="b";overload="vec4"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="f";overload="scalar"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="f";overload="vec2"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="f";overload="vec3"] @@ -204,22 +214,23 @@ [:inputSource="storage_r";component="u";overload="scalar"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="u";overload="vec2"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="u";overload="vec3"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="u";overload="vec4"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="af";overload="scalar"] @@ -273,16 +284,19 @@ [:inputSource="storage_rw";component="b";overload="scalar"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="b";overload="vec2"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="b";overload="vec3"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="b";overload="vec4"] @@ -343,7 +357,8 @@ [:inputSource="storage_rw";component="i";overload="vec2"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="i";overload="vec3"] @@ -434,8 +449,7 @@ [:inputSource="uniform";component="h";overload="vec3"] expected: - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";component="h";overload="vec4"] expected: @@ -456,28 +470,33 @@ [:inputSource="uniform";component="i";overload="vec4"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";component="u";overload="scalar"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";component="u";overload="vec2"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="uniform";component="u";overload="vec3"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";component="u";overload="vec4"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,select:vector:*] expected: - if os == "linux": TIMEOUT + if os == "linux": [OK, TIMEOUT] if os == "mac": TIMEOUT [:inputSource="const";component="af";overload="vec2"] expected: FAIL @@ -548,17 +567,17 @@ [:inputSource="storage_r";component="af";overload="vec2"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";component="af";overload="vec3"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";component="af";overload="vec4"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";component="ai";overload="vec2"] expected: @@ -584,12 +603,12 @@ [:inputSource="storage_r";component="b";overload="vec4"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";component="f";overload="vec2"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";component="f";overload="vec3"] expected: @@ -619,98 +638,92 @@ [:inputSource="storage_r";component="i";overload="vec2"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="i";overload="vec3"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="i";overload="vec4"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="u";overload="vec2"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="u";overload="vec3"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";component="u";overload="vec4"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="af";overload="vec2"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="af";overload="vec3"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="af";overload="vec4"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="ai";overload="vec2"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="ai";overload="vec3"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="ai";overload="vec4"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="b";overload="vec2"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="b";overload="vec3"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="b";overload="vec4"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="f";overload="vec2"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="f";overload="vec3"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="f";overload="vec4"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="h";overload="vec2"] @@ -730,36 +743,32 @@ [:inputSource="storage_rw";component="i";overload="vec2"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="i";overload="vec3"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="i";overload="vec4"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="u";overload="vec2"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="u";overload="vec3"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";component="u";overload="vec4"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";component="af";overload="vec2"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sinh/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sinh/cts.https.html.ini index 2cf88f15a524..5863d7780070 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sinh/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/sinh/cts.https.html.ini @@ -159,6 +159,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,sinh:f32:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -197,15 +199,18 @@ [:inputSource="storage_rw";vectorize=2] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, FAIL] [:inputSource="storage_rw";vectorize=3] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize=4] expected: if os == "win": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize="_undef_"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html.ini index 7052b44876d2..9f624e6dc900 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureDimensions/cts.https.html.ini @@ -293,7 +293,7 @@ [:format="r32uint";aspect="all";samples=1] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -330,8 +330,7 @@ expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:format="rg16float";aspect="all";samples=4] expected: @@ -344,12 +343,14 @@ expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:format="rg16sint";aspect="all";samples=4] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:format="rg16uint";aspect="all";samples=1] expected: @@ -376,6 +377,7 @@ [:format="rg8sint";aspect="all";samples=1] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL @@ -424,26 +426,23 @@ [:format="rgba16float";aspect="all";samples=1] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:format="rgba16float";aspect="all";samples=4] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:format="rgba16sint";aspect="all";samples=1] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:format="rgba16sint";aspect="all";samples=4] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and not debug: [TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureNumLevels/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureNumLevels/cts.https.html.ini index 02afe8c13633..991c1cd672df 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureNumLevels/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/builtin/textureNumLevels/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureNumLevels:depth:*] + expected: + if os == "mac": SKIP [:texture_type="texture_depth_2d"] [:texture_type="texture_depth_2d_array"] @@ -9,6 +11,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,builtin,textureNumLevels:sampled:*] + expected: + if os == "mac": SKIP [:texture_type="texture_1d"] [:texture_type="texture_2d"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html.ini index 48d9d8d4d779..3aa3bdd7a169 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/call/user/ptr_params/cts.https.html.ini @@ -1,18 +1,26 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:array_length:*] + expected: + if os == "mac": SKIP [:] [cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:atomic_ptr_to_element:*] + expected: + if os == "mac": SKIP [:address_space="storage"] [:address_space="workgroup"] [cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:mixed_ptr_parameters:*] + expected: + if os == "mac": SKIP [:] [cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:read_full_object:*] + expected: + if os == "mac": SKIP [:address_space="function";call_indirection=0;type="array"] [:address_space="function";call_indirection=0;type="struct"] @@ -105,6 +113,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:read_ptr_to_element:*] + expected: + if os == "mac": SKIP [:address_space="function"] [:address_space="private"] @@ -117,6 +127,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:read_ptr_to_member:*] + expected: + if os == "mac": SKIP [:address_space="function"] [:address_space="private"] @@ -129,6 +141,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:write_full_object:*] + expected: + if os == "mac": SKIP [:address_space="function";call_indirection=0;type="array"] [:address_space="function";call_indirection=0;type="struct"] @@ -203,6 +217,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:write_ptr_to_element:*] + expected: + if os == "mac": SKIP [:address_space="function"] [:address_space="private"] @@ -213,6 +229,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:write_ptr_to_member:*] + expected: + if os == "mac": SKIP [:address_space="function"] [:address_space="private"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html.ini index b2b3c8f42d7e..7f606f09fb7a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/constructor/non_zero/cts.https.html.ini @@ -351,8 +351,7 @@ [:abstract_type="abstract-float";concrete_type="f16";signature="2s"] expected: - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";signature="2ss"] expected: @@ -404,8 +403,7 @@ expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f32";signature="ss2"] expected: FAIL @@ -517,71 +515,87 @@ [cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:abstract_vector_splat:*] expected: + if os == "linux" and debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:abstract_type="abstract-float";concrete_type="f16";value=100;width=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=100;width=3] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=100;width=4] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=1;width=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=1;width=3] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=1;width=4] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=2;width=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=2;width=3] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=2;width=4] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=5;width=2] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=5;width=3] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f16";value=5;width=4] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f32";value=100;width=2] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f32";value=100;width=3] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f32";value=100;width=4] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-float";concrete_type="f32";value=1;width=2] @@ -635,7 +649,8 @@ [:abstract_type="abstract-float";concrete_type="f32";value=5;width=4] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:abstract_type="abstract-int";concrete_type="f16";value=100;width=2] @@ -783,15 +798,18 @@ expected: FAIL [:abstract_type="abstract-int";concrete_type="u32";value=1;width=4] - expected: FAIL - - [:abstract_type="abstract-int";concrete_type="u32";value=2;width=2] expected: if os == "win": FAIL if os == "linux": FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL + [:abstract_type="abstract-int";concrete_type="u32";value=2;width=2] + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] + [:abstract_type="abstract-int";concrete_type="u32";value=2;width=3] expected: if os == "win": FAIL @@ -962,15 +980,18 @@ expected: FAIL [:inputSource="const";type="vec4i";length=5;infer_type=false] - expected: FAIL - - [:inputSource="const";type="vec4i";length=5;infer_type=true] expected: if os == "win": FAIL if os == "linux": FAIL if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL + [:inputSource="const";type="vec4i";length=5;infer_type=true] + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] + [:inputSource="storage_r";type="bool";length=10;infer_type=false] expected: [FAIL, TIMEOUT, NOTRUN] @@ -1336,14 +1357,12 @@ [:inputSource="uniform";type="f32";length=10;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="f32";length=10;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="f32";length=1;infer_type=false] @@ -1353,19 +1372,17 @@ [:inputSource="uniform";type="f32";length=1;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="f32";length=5;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="f32";length=5;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="i32";length=10;infer_type=false] @@ -1442,8 +1459,7 @@ [:inputSource="uniform";type="vec3f";length=1;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="vec3f";length=1;infer_type=true] @@ -1466,8 +1482,7 @@ [:inputSource="uniform";type="vec4i";length=10;infer_type=false] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1924,30 +1939,27 @@ [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=false] @@ -2011,8 +2023,7 @@ [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=false] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -2098,10 +2109,12 @@ [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=false] [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=true] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=true] expected: @@ -2117,7 +2130,8 @@ [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=false] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";type="f32";columns=3;rows=2;infer_type=true] expected: @@ -2599,38 +2613,32 @@ [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=true] @@ -2653,24 +2661,27 @@ [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=false] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=4;rows=2;infer_type=true] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=false] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=4;rows=3;infer_type=true] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -2765,10 +2776,12 @@ [:inputSource="uniform";type="f32";columns=2;rows=2;infer_type=true] [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=false] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";type="f32";columns=2;rows=3;infer_type=true] expected: - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";type="f32";columns=2;rows=4;infer_type=false] expected: @@ -3041,56 +3054,52 @@ [:inputSource="storage_r";type="i32";width=3;infer_type=false] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="i32";width=3;infer_type=true] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="i32";width=4;infer_type=false] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="i32";width=4;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="u32";width=2;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="u32";width=2;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="u32";width=3;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="u32";width=3;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="u32";width=4;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="u32";width=4;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="bool";width=2;infer_type=false] @@ -3276,7 +3285,7 @@ [:inputSource="uniform";type="i32";width=3;infer_type=true] expected: - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";type="i32";width=4;infer_type=false] expected: @@ -4796,18 +4805,21 @@ [:inputSource="uniform";type="bool";signature="2s";infer_type=false] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="bool";signature="2s";infer_type=true] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="bool";signature="2ss";infer_type=false] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="bool";signature="2ss";infer_type=true] @@ -4824,13 +4836,15 @@ [:inputSource="uniform";type="bool";signature="s2";infer_type=false] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="bool";signature="s2";infer_type=true] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";type="bool";signature="s2s";infer_type=false] @@ -5690,37 +5704,37 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="const";type="i32";value=5;width=2;infer_type=false] expected: if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:inputSource="const";type="i32";value=5;width=2;infer_type=true] expected: if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="const";type="i32";value=5;width=3;infer_type=false] expected: if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="const";type="i32";value=5;width=3;infer_type=true] expected: if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="const";type="i32";value=5;width=4;infer_type=false] expected: @@ -10085,44 +10099,42 @@ [:inputSource="storage_rw";type="f32";columns=2;rows=2;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=2;rows=3;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=2;rows=4;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=3;rows=2;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f32";columns=3;rows=3;infer_type=true] @@ -10169,8 +10181,7 @@ [:inputSource="storage_rw";type="f32";columns=4;rows=4;infer_type=false] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -10513,8 +10524,7 @@ [:inputSource="storage_r";type="f32";value=100] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="f32";value=2] @@ -10524,8 +10534,7 @@ [:inputSource="storage_r";type="f32";value=5] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="i32";value="max"] @@ -10590,38 +10599,32 @@ [:inputSource="storage_rw";type="bool";value="max"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="bool";value="min"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="bool";value=1] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="bool";value=100] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="bool";value=2] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="bool";value=5] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="f16";value="max"] @@ -10739,7 +10742,10 @@ expected: [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="u32";value=2] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";type="u32";value=5] expected: [TIMEOUT, NOTRUN] @@ -10834,7 +10840,7 @@ [:inputSource="uniform";type="u32";value=5] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,execution,expression,constructor,non_zero:structure:*] @@ -11076,8 +11082,7 @@ [:inputSource="storage_r";type="f32";width=4;infer_type=false] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -11105,38 +11110,32 @@ [:inputSource="storage_r";type="i32";width=3;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="i32";width=4;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="i32";width=4;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="u32";width=2;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="u32";width=2;infer_type=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="u32";width=3;infer_type=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";type="u32";width=3;infer_type=true] @@ -11328,12 +11327,16 @@ [:inputSource="uniform";type="i32";width=2;infer_type=false] [:inputSource="uniform";type="i32";width=2;infer_type=true] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";type="i32";width=3;infer_type=false] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";type="i32";width=3;infer_type=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";type="i32";width=4;infer_type=false] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html.ini index c920b31d056c..585d54f7e4f2 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/precedence/cts.https.html.ini @@ -299,8 +299,7 @@ [:expr="neg_add";decl="const";strip_spaces=false] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:expr="neg_add";decl="const";strip_spaces=true] expected: @@ -449,12 +448,14 @@ [:expr="neg_or";decl="const";strip_spaces=true] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:expr="neg_or";decl="literal";strip_spaces=false] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:expr="neg_or";decl="literal";strip_spaces=true] @@ -472,7 +473,7 @@ [:expr="neg_or";decl="override";strip_spaces=true] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] @@ -559,7 +560,8 @@ if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:expr="neg_shr";decl="var%3Cprivate%3E";strip_spaces=true] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html.ini index 10bedb522e0d..af2d9c75cd9c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/address_of_and_indirection/cts.https.html.ini @@ -103,13 +103,12 @@ [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="deref_address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="deref_pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"] @@ -148,14 +147,12 @@ [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="deref_address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=3;scalarType="u32";derefType="deref_pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=4;scalarType="bool";derefType="deref_address_of_identifier"] @@ -243,11 +240,16 @@ [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="deref_address_of_identifier"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize="_undef_";scalarType="f32";derefType="deref_pointer"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_rw";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"] expected: @@ -621,17 +623,17 @@ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="pointer"] @@ -641,7 +643,8 @@ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="address_of_identifier"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="deref_address_of_identifier"] @@ -658,11 +661,16 @@ [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="pointer"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="address_of_identifier"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="deref_address_of_identifier"] expected: @@ -677,14 +685,22 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="f16";derefType="pointer"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="address_of_identifier"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -696,20 +712,27 @@ if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="pointer"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="address_of_identifier"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="deref_address_of_identifier"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="i32";derefType="deref_pointer"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -721,22 +744,26 @@ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="address_of_identifier"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="deref_pointer"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="pointer"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=3;scalarType="bool";derefType="address_of_identifier"] @@ -1387,6 +1414,7 @@ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="deref_pointer"] expected: @@ -1523,22 +1551,21 @@ if os == "mac" and not debug: TIMEOUT [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="deref_address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="deref_pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="bool";derefType="pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="f16";derefType="address_of_identifier"] @@ -1595,13 +1622,12 @@ [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="deref_address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="deref_pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="i32";derefType="pointer"] @@ -1612,22 +1638,22 @@ [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="deref_address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="deref_pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize="_undef_";scalarType="u32";derefType="pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="bool";derefType="address_of_identifier"] @@ -1673,7 +1699,11 @@ expected: [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="address_of_identifier"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="f32";derefType="deref_address_of_identifier"] expected: @@ -1717,17 +1747,20 @@ [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="address_of_identifier"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="deref_address_of_identifier"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="deref_pointer"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="storage_r";vectorize=2;scalarType="u32";derefType="pointer"] @@ -2341,7 +2374,8 @@ [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="address_of_identifier"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=3;scalarType="f16";derefType="deref_address_of_identifier"] expected: @@ -2371,7 +2405,7 @@ [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="deref_pointer"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=3;scalarType="f32";derefType="pointer"] expected: @@ -2381,6 +2415,7 @@ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="address_of_identifier"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="deref_address_of_identifier"] expected: @@ -2393,6 +2428,7 @@ [:inputSource="uniform";vectorize=3;scalarType="i32";derefType="pointer"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=3;scalarType="u32";derefType="address_of_identifier"] expected: @@ -2432,7 +2468,6 @@ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="deref_address_of_identifier"] @@ -2447,27 +2482,22 @@ [:inputSource="uniform";vectorize=4;scalarType="f16";derefType="pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="deref_address_of_identifier"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="deref_pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=4;scalarType="f32";derefType="pointer"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:inputSource="uniform";vectorize=4;scalarType="i32";derefType="address_of_identifier"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_arithmetic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_arithmetic/cts.https.html.ini index cffc0a7fc339..86035bf7b52a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_arithmetic/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/af_arithmetic/cts.https.html.ini @@ -5,7 +5,11 @@ expected: FAIL [:inputSource="const";vectorize=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:inputSource="const";vectorize=3] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_conversion/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_conversion/cts.https.html.ini index 8d41cf5ad8dc..ceaa785fef20 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_conversion/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/f32_conversion/cts.https.html.ini @@ -349,20 +349,36 @@ [:inputSource="storage_r";cols=2;rows=4] [:inputSource="storage_r";cols=3;rows=2] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=3] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=3;rows=4] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=4;rows=2] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=4;rows=3] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_r";cols=4;rows=4] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=2;rows=2] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=2;rows=3] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:inputSource="storage_rw";cols=2;rows=4] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html.ini index eea5b7984879..7d4839c8951f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/i32_conversion/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,unary,i32_conversion:abstract_float:*] + expected: + if os == "win" and debug: [OK, CRASH] [:inputSource="const";vectorize="_undef_"] expected: if os == "win": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html.ini index 75785b0de3b9..45a9ab469507 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/expression/unary/u32_conversion/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:abstract_float:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: if os == "win": FAIL @@ -21,6 +23,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:abstract_int:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] [:inputSource="const";vectorize=2] @@ -55,6 +59,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:bool:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -93,6 +99,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:f16:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: if os == "mac": FAIL @@ -159,6 +167,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:f32:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -227,6 +237,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:i32:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: FAIL @@ -277,6 +289,8 @@ [cts.https.html?q=webgpu:shader,execution,expression,unary,u32_conversion:u32:*] + expected: + if os == "mac": SKIP [:inputSource="const";vectorize="_undef_"] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html.ini index bede6de31f8c..7828be324a67 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/memory_layout/cts.https.html.ini @@ -196,91 +196,99 @@ [:case="atomic_align4";aspace="function"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_align4";aspace="private"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_align4";aspace="storage"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="atomic_align4";aspace="uniform"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_align4";aspace="workgroup"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_size4";aspace="function"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_size4";aspace="private"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_size4";aspace="storage"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="atomic_size4";aspace="uniform"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_size4";aspace="workgroup"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat2x2f_align8";aspace="function"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat2x2f_align8";aspace="private"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat2x2f_align8";aspace="storage"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat2x2f_align8";aspace="uniform"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat2x2f_align8";aspace="workgroup"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat2x2f_size";aspace="function"] @@ -386,35 +394,34 @@ [:case="mat2x3f_align16";aspace="function"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat2x3f_align16";aspace="private"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat2x3f_align16";aspace="storage"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat2x3f_align16";aspace="uniform"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat2x3f_align16";aspace="workgroup"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -666,36 +673,36 @@ [:case="mat3x2f_align8";aspace="function"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat3x2f_align8";aspace="private"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat3x2f_align8";aspace="storage"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat3x2f_align8";aspace="uniform"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat3x2f_align8";aspace="workgroup"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat3x2f_size";aspace="function"] @@ -814,22 +821,19 @@ [:case="mat3x3f_align16";aspace="storage"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat3x3f_align16";aspace="uniform"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat3x3f_align16";aspace="workgroup"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -1081,35 +1085,35 @@ [:case="mat4x2f_align8";aspace="function"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat4x2f_align8";aspace="private"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat4x2f_align8";aspace="storage"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat4x2f_align8";aspace="uniform"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="mat4x2f_align8";aspace="workgroup"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -1501,35 +1505,35 @@ [:case="size80";aspace="function"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="size80";aspace="private"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="size80";aspace="storage"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="size80";aspace="uniform"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="size80";aspace="workgroup"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -2038,8 +2042,7 @@ expected: if os == "win" and debug: FAIL if os == "win" and not debug: [PASS, FAIL] - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec2f_align8";aspace="storage"] expected: @@ -2161,61 +2164,66 @@ [:case="vec3h_size6";aspace="function"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3h_size6";aspace="private"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3h_size6";aspace="storage"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3h_size6";aspace="uniform"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3h_size6";aspace="workgroup"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3i_size12";aspace="function"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3i_size12";aspace="private"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3i_size12";aspace="storage"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3i_size12";aspace="uniform"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3i_size12";aspace="workgroup"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -2252,34 +2260,34 @@ [:case="vec4f_align16";aspace="function"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec4f_align16";aspace="private"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec4f_align16";aspace="storage"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec4f_align16";aspace="uniform"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec4f_align16";aspace="workgroup"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -2485,67 +2493,76 @@ [:case="atomic_align4";aspace="function"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_align4";aspace="private"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_align4";aspace="storage"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_align4";aspace="workgroup"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_size4";aspace="function"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_size4";aspace="private"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_size4";aspace="storage"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="atomic_size4";aspace="workgroup"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat2x2f_align8";aspace="function"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="mat2x2f_align8";aspace="private"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="mat2x2f_align8";aspace="storage"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat2x2f_align8";aspace="workgroup"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -2624,21 +2641,25 @@ [:case="mat2x3f_align16";aspace="function"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat2x3f_align16";aspace="private"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat2x3f_align16";aspace="storage"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat2x3f_align16";aspace="workgroup"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -2708,22 +2729,28 @@ [:case="mat2x4f_align16";aspace="function"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat2x4f_align16";aspace="private"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat2x4f_align16";aspace="storage"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat2x4f_align16";aspace="workgroup"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat2x4f_size";aspace="function"] @@ -2793,26 +2820,27 @@ [:case="mat3x2f_align8";aspace="function"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="mat3x2f_align8";aspace="private"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="mat3x2f_align8";aspace="storage"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat3x2f_align8";aspace="workgroup"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -2894,24 +2922,26 @@ [:case="mat3x3f_align16";aspace="function"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat3x3f_align16";aspace="private"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat3x3f_align16";aspace="storage"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat3x3f_align16";aspace="workgroup"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat3x3f_size";aspace="function"] @@ -2980,22 +3010,25 @@ [:case="mat3x4f_align16";aspace="function"] expected: + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat3x4f_align16";aspace="private"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat3x4f_align16";aspace="storage"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat3x4f_align16";aspace="workgroup"] expected: + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -3066,26 +3099,27 @@ [:case="mat4x2f_align8";aspace="function"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="mat4x2f_align8";aspace="private"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="mat4x2f_align8";aspace="storage"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat4x2f_align8";aspace="workgroup"] expected: if os == "win" and debug: FAIL - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -3167,26 +3201,26 @@ [:case="mat4x3f_align16";aspace="function"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat4x3f_align16";aspace="private"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat4x3f_align16";aspace="storage"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat4x3f_align16";aspace="workgroup"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat4x3f_size";aspace="function"] @@ -3261,12 +3295,16 @@ [:case="mat4x4f_align16";aspace="storage"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="mat4x4f_align16";aspace="workgroup"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:case="mat4x4f_size";aspace="function"] expected: [PASS, TIMEOUT, NOTRUN] @@ -3334,21 +3372,25 @@ [:case="size80";aspace="function"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="size80";aspace="private"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="size80";aspace="storage"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="size80";aspace="workgroup"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -3758,32 +3800,36 @@ [:case="vec3h_size6";aspace="function"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3h_size6";aspace="private"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3h_size6";aspace="storage"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3h_size6";aspace="workgroup"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="vec3i_size12";aspace="function"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="vec3i_size12";aspace="private"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -3793,8 +3839,7 @@ [:case="vec3i_size12";aspace="workgroup"] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="vec3u_align16";aspace="function"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access/cts.https.html.ini index e1e23996524b..3f8f2626f861 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access/cts.https.html.ini @@ -1165,7 +1165,7 @@ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="array";shadowingMode="function-scope";isAtomic=false;baseType="i32"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win" and not debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL @@ -1297,24 +1297,22 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="f32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="i32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="function-scope";isAtomic=false;baseType="u32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false] expected: @@ -1330,8 +1328,7 @@ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="f32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="module-scope";isAtomic=false;baseType="i32"] expected: @@ -1354,7 +1351,7 @@ [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read";access="read";dynamicOffset=true;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"] expected: @@ -1427,24 +1424,22 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="f32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="i32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=false;baseType="u32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=true] expected: @@ -1455,8 +1450,7 @@ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="i32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="module-scope";isAtomic=true;baseType="u32"] expected: @@ -1473,24 +1467,22 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="f32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="i32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=false;baseType="u32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=true] expected: @@ -1501,14 +1493,12 @@ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=true;baseType="i32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="array";shadowingMode="none";isAtomic=true;baseType="u32"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false] expected: @@ -1519,7 +1509,8 @@ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f16"] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="matrix";shadowingMode="function-scope";isAtomic=false;baseType="f32"] expected: @@ -1621,7 +1612,8 @@ [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f16"] expected: if os == "win": [TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:addressSpace="storage";storageMode="read_write";access="read";dynamicOffset=false;containerType="vector";shadowingMode="none";isAtomic=false;baseType="f32"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access_vertex/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access_vertex/cts.https.html.ini index c47d14715eb5..e4d8692a9e77 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access_vertex/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/robust_access_vertex/cts.https.html.ini @@ -673,8 +673,7 @@ if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] expected: @@ -729,8 +728,7 @@ if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] expected: @@ -785,8 +783,7 @@ if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] expected: @@ -841,8 +838,7 @@ if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:indexed=false;indirect=true;drawCallTestParameter="firstVertex";type="float32x2";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] expected: @@ -1811,7 +1807,11 @@ if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] expected: @@ -1849,7 +1849,11 @@ if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] expected: @@ -1887,7 +1891,11 @@ if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] expected: @@ -1925,7 +1933,11 @@ if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] expected: @@ -1963,7 +1975,11 @@ if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] expected: @@ -2001,7 +2017,11 @@ if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] expected: @@ -2039,7 +2059,11 @@ if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] expected: @@ -2078,7 +2102,8 @@ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -2120,7 +2145,8 @@ [:indexed=false;indirect=true;drawCallTestParameter="instanceCount";type="float32x2";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -4477,7 +4503,11 @@ if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] expected: @@ -4522,7 +4552,11 @@ if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] expected: @@ -4567,7 +4601,11 @@ if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:indexed=false;indirect=true;drawCallTestParameter="vertexCount";type="float32x4";additionalBuffers=4;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] expected: @@ -4615,6 +4653,7 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=false;errorScale=0] @@ -4663,6 +4702,7 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=false;offsetVertexBuffer=true;errorScale=0] @@ -4711,6 +4751,7 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=false;errorScale=0] @@ -4753,6 +4794,7 @@ expected: if os == "win": [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:indexed=true;indirect=false;drawCallTestParameter="baseVertex";type="float32";additionalBuffers=0;partialLastNumber=true;offsetVertexBuffer=true;errorScale=0] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/compute_builtins/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/compute_builtins/cts.https.html.ini index c6d2049d620e..b9c8e5edc12e 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/compute_builtins/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/compute_builtins/cts.https.html.ini @@ -5,6 +5,7 @@ expected: if os == "win" and debug: [PASS, FAIL] if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] [:method="mixed";dispatch="direct";groupSize={"x":1,"y":1,"z":1};numGroups={"x":8,"y":4,"z":2}] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html.ini index 4f0c8f251570..9cbea5edd115 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/fragment_builtins/cts.https.html.ini @@ -1,7 +1,10 @@ [cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,front_facing:*] expected: - if os == "linux" and debug: [OK, TIMEOUT] - if os == "mac": TIMEOUT + if os == "win": [OK, CRASH] + if os == "linux" and debug: [TIMEOUT, CRASH] + if os == "linux" and not debug: [OK, CRASH] + if os == "mac" and debug: CRASH + if os == "mac" and not debug: [TIMEOUT, CRASH] [:nearFar=[0,1\];sampleCount=1;frontFace="ccw";interpolation={"type":"flat"}] expected: FAIL @@ -96,8 +99,7 @@ expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:nearFar=[0.25,0.75\];sampleCount=1;frontFace="ccw";interpolation={"type":"linear","sampling":"centroid"}] expected: @@ -151,19 +153,22 @@ [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"linear","sampling":"center"}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"linear","sampling":"centroid"}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"linear","sampling":"sample"}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:nearFar=[0.25,0.75\];sampleCount=4;frontFace="ccw";interpolation={"type":"perspective","sampling":"center"}] @@ -228,6 +233,10 @@ [cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,interStage,centroid:*] + expected: + if os == "win": [OK, CRASH] + if os == "linux" and debug: [OK, CRASH] + if os == "mac": [OK, CRASH] [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"linear","sampling":"center"}] expected: FAIL @@ -278,6 +287,10 @@ [cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,interStage:*] + expected: + if os == "win": [OK, CRASH] + if os == "linux" and not debug: [OK, CRASH] + if os == "mac": [OK, CRASH] [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"flat"}] expected: FAIL @@ -340,6 +353,11 @@ [cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,position:*] + expected: + if os == "win" and debug: [OK, CRASH] + if os == "win" and not debug: CRASH + if os == "linux": [OK, CRASH] + if os == "mac": [OK, CRASH] [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"flat"}] expected: FAIL @@ -426,6 +444,7 @@ [cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,sample_index:*] + expected: [OK, CRASH] [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"flat"}] expected: FAIL @@ -513,7 +532,10 @@ [cts.https.html?q=webgpu:shader,execution,shader_io,fragment_builtins:inputs,sample_mask:*] expected: - if os == "linux" and debug: [OK, TIMEOUT] + if os == "win": [OK, CRASH] + if os == "linux" and debug: [TIMEOUT, CRASH] + if os == "linux" and not debug: [OK, CRASH] + if os == "mac": [OK, CRASH] [:nearFar=[0,1\];sampleCount=1;interpolation={"type":"flat"}] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html.ini index 9d5554a481fa..12f5ca01250f 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/shader_io/workgroup_size/cts.https.html.ini @@ -1260,35 +1260,37 @@ [:wgx=3;wgy=16;wgz=1] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:wgx=3;wgy=16;wgz=11] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=16;wgz=128] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=16;wgz=16] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=16;wgz=256] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=16;wgz=3] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:wgx=3;wgy=1;wgz=1] @@ -1445,13 +1447,13 @@ [:wgx=3;wgy=51;wgz=1] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:wgx=3;wgy=51;wgz=11] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=51;wgz=128] @@ -1463,6 +1465,7 @@ [:wgx=3;wgy=51;wgz=16] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=51;wgz=256] @@ -1474,6 +1477,7 @@ [:wgx=3;wgy=51;wgz=3] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=64;wgz=1] @@ -1518,22 +1522,22 @@ [:wgx=3;wgy=8;wgz=11] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=8;wgz=128] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=8;wgz=16] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=8;wgz=256] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:wgx=3;wgy=8;wgz=3] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/zero_init/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/zero_init/cts.https.html.ini index 49d4cd7751d5..fc725e5d0c65 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/zero_init/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/execution/zero_init/cts.https.html.ini @@ -537,48 +537,59 @@ expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=18] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=19] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=2] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=20] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=21] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=22] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=23] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:addressSpace="workgroup";workgroupSize=[1,1,1\];batch__=24] expected: @@ -1409,8 +1420,7 @@ if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:addressSpace="workgroup";workgroupSize=[1,32,1\];batch__=6] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html.ini index ad85c3953cfd..437fa7964cd4 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/decl/var/cts.https.html.ini @@ -1,8 +1,12 @@ [cts.https.html?q=webgpu:shader,validation,decl,var:binding_collision_unused_helper:*] + expected: + if os == "mac": SKIP [:] [cts.https.html?q=webgpu:shader,validation,decl,var:binding_collisions:*] + expected: + if os == "mac": SKIP [:a_group=0;b_group=0;a_binding=0;b_binding=0;b_use="different"] [:a_group=0;b_group=0;a_binding=0;b_binding=0;b_use="same"] @@ -81,6 +85,8 @@ [cts.https.html?q=webgpu:shader,validation,decl,var:binding_point_on_function_var:*] + expected: + if os == "mac": SKIP [:group="";binding=""] [:group="";binding="%40binding(0)"] @@ -91,6 +97,8 @@ [cts.https.html?q=webgpu:shader,validation,decl,var:binding_point_on_non_resources:*] + expected: + if os == "mac": SKIP [:addrspace="private";group="";binding=""] [:addrspace="private";group="";binding="%40binding(0)"] @@ -109,6 +117,8 @@ [cts.https.html?q=webgpu:shader,validation,decl,var:binding_point_on_resources:*] + expected: + if os == "mac": SKIP [:decl="sampler";group="";binding=""] [:decl="sampler";group="";binding="%40binding(0)"] @@ -143,12 +153,17 @@ [cts.https.html?q=webgpu:shader,validation,decl,var:function_addrspace_at_module_scope:*] + expected: + if os == "mac": SKIP [:addrspace="function"] [:addrspace="private"] [cts.https.html?q=webgpu:shader,validation,decl,var:function_scope_types:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] + if os == "mac": SKIP [:type="S_S_bool";kind="comment";via_alias=false] expected: if os == "win": [PASS, FAIL] @@ -525,11 +540,16 @@ [:type="texture_2d%3Cf32%3E";kind="comment";via_alias=true] expected: if os == "win": [PASS, FAIL] - if os == "linux": [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] [:type="texture_2d%3Cf32%3E";kind="var";via_alias=false] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="texture_2d%3Cf32%3E";kind="var";via_alias=true] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:type="u32";kind="comment";via_alias=false] expected: @@ -641,6 +661,8 @@ [cts.https.html?q=webgpu:shader,validation,decl,var:handle_initializer:*] + expected: + if os == "mac": SKIP [:initializer=false;type="sampler"] [:initializer=false;type="texture_2d%3Cf32%3E"] @@ -651,6 +673,8 @@ [cts.https.html?q=webgpu:shader,validation,decl,var:initializer_kind:*] + expected: + if os == "mac": SKIP [:initializer="42u";addrspace="function"] expected: if os == "win": FAIL @@ -744,6 +768,8 @@ [cts.https.html?q=webgpu:shader,validation,decl,var:module_scope_initializers:*] + expected: + if os == "mac": SKIP [:initializer=false;kind="private"] [:initializer=false;kind="storage_ro"] @@ -769,6 +795,7 @@ expected: if os == "win": TIMEOUT if os == "linux": TIMEOUT + if os == "mac": SKIP [:type="S_S_bool";kind="comment";via_alias=false] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] @@ -1667,30 +1694,35 @@ [:type="atomic%3Ci32%3E";kind="uniform";via_alias=false] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="atomic%3Ci32%3E";kind="uniform";via_alias=true] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="atomic%3Ci32%3E";kind="workgroup";via_alias=false] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="atomic%3Ci32%3E";kind="workgroup";via_alias=true] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="atomic%3Cu32%3E";kind="comment";via_alias=false] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:type="atomic%3Cu32%3E";kind="comment";via_alias=true] expected: @@ -2398,34 +2430,16 @@ if os == "linux": [PASS, FAIL] [:type="vec2%3Cbool%3E";kind="storage_ro";via_alias=false] - expected: - if os == "win": FAIL - if os == "linux": FAIL [:type="vec2%3Cbool%3E";kind="storage_ro";via_alias=true] - expected: - if os == "win": FAIL - if os == "linux": FAIL [:type="vec2%3Cbool%3E";kind="storage_rw";via_alias=false] - expected: - if os == "win": FAIL - if os == "linux": FAIL [:type="vec2%3Cbool%3E";kind="storage_rw";via_alias=true] - expected: - if os == "win": FAIL - if os == "linux": FAIL [:type="vec2%3Cbool%3E";kind="uniform";via_alias=false] - expected: - if os == "win": FAIL - if os == "linux": FAIL [:type="vec2%3Cbool%3E";kind="uniform";via_alias=true] - expected: - if os == "win": FAIL - if os == "linux": FAIL [:type="vec2%3Cbool%3E";kind="workgroup";via_alias=false] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/access/vector/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/access/vector/cts.https.html.ini index 5171fff3e4f0..e7bc2bee0382 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/access/vector/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/access/vector/cts.https.html.ini @@ -44495,6 +44495,7 @@ [:vector_decl="const";vector_width=3;element_type="f16"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, FAIL] if os == "mac" and not debug: FAIL @@ -44502,7 +44503,8 @@ expected: if os == "win" and debug: FAIL if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] if os == "mac" and debug: [PASS, FAIL] if os == "mac" and not debug: FAIL @@ -44745,7 +44747,7 @@ expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, FAIL] + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:vector_decl="param";vector_width=3;element_type="f32"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html.ini index e4f0123180b2..3f466b24785d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/add_sub_mul/cts.https.html.ini @@ -151,7 +151,7 @@ [:lhs="abstract-float";rhs="vec2%3Cabstract-float%3E"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cabstract-int%3E"] expected: @@ -165,12 +165,11 @@ [:lhs="abstract-float";rhs="vec2%3Cf16%3E"] expected: - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cf32%3E"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Ci32%3E"] expected: @@ -272,58 +271,72 @@ [:lhs="f16";rhs="abstract-float"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="f16";rhs="abstract-int"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="f16";rhs="bool"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f16";rhs="f16"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="f16";rhs="f32"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f16";rhs="i32"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f16";rhs="u32"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f16";rhs="vec2%3Cabstract-float%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="f16";rhs="vec2%3Cabstract-int%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="f16";rhs="vec2%3Cbool%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f16";rhs="vec2%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="f16";rhs="vec2%3Cf32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f16";rhs="vec2%3Ci32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f16";rhs="vec2%3Cu32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f32";rhs="abstract-float"] @@ -353,20 +366,23 @@ [:lhs="f32";rhs="i32"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f32";rhs="u32"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f32";rhs="vec2%3Cabstract-float%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f32";rhs="vec2%3Cabstract-int%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -377,18 +393,22 @@ [:lhs="f32";rhs="vec2%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f32";rhs="vec2%3Cf32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f32";rhs="vec2%3Ci32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="f32";rhs="vec2%3Cu32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="i32";rhs="abstract-float"] @@ -614,74 +634,82 @@ [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-float"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-int"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="bool"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="f16"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="f32"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="i32"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="u32"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -807,6 +835,7 @@ [:lhs="vec2%3Cf32%3E";rhs="abstract-float"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -825,17 +854,19 @@ [:lhs="vec2%3Cf32%3E";rhs="f16"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="f32"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="i32"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -848,12 +879,14 @@ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -1860,9 +1893,9 @@ [cts.https.html?q=webgpu:shader,validation,expression,binary,add_sub_mul:scalar_vector_out_of_range:*] expected: + if os == "win" and debug: TIMEOUT if os == "linux" and debug: [OK, TIMEOUT] - if os == "mac" and debug: TIMEOUT - if os == "mac" and not debug: [OK, TIMEOUT] + if os == "mac": [OK, TIMEOUT] [:op="add";lhs="f16";rhs="f16"] expected: if os == "mac": FAIL @@ -2040,200 +2073,227 @@ [:op="mul";lhs="f16";rhs="f16"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="mul";lhs="f32";rhs="f32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:op="mul";lhs="i32";rhs="i32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="u32";rhs="u32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec2%3Cf16%3E";rhs="f16"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="mul";lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="mul";lhs="vec2%3Cf32%3E";rhs="f32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:op="mul";lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:op="mul";lhs="vec2%3Ci32%3E";rhs="i32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec2%3Ci32%3E";rhs="vec2%3Ci32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec2%3Cu32%3E";rhs="u32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec2%3Cu32%3E";rhs="vec2%3Cu32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec3%3Cf16%3E";rhs="f16"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:op="mul";lhs="vec3%3Cf16%3E";rhs="vec3%3Cf16%3E"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="mul";lhs="vec3%3Cf32%3E";rhs="f32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:op="mul";lhs="vec3%3Cf32%3E";rhs="vec3%3Cf32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:op="mul";lhs="vec3%3Ci32%3E";rhs="i32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec3%3Ci32%3E";rhs="vec3%3Ci32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec3%3Cu32%3E";rhs="u32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec3%3Cu32%3E";rhs="vec3%3Cu32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec4%3Cf16%3E";rhs="f16"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:op="mul";lhs="vec4%3Cf16%3E";rhs="vec4%3Cf16%3E"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:op="mul";lhs="vec4%3Cf32%3E";rhs="f32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:op="mul";lhs="vec4%3Cf32%3E";rhs="vec4%3Cf32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:op="mul";lhs="vec4%3Ci32%3E";rhs="i32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec4%3Ci32%3E";rhs="vec4%3Ci32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec4%3Cu32%3E";rhs="u32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="mul";lhs="vec4%3Cu32%3E";rhs="vec4%3Cu32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="sub";lhs="f16";rhs="f16"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="sub";lhs="f32";rhs="f32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -2254,24 +2314,28 @@ [:op="sub";lhs="vec2%3Cf16%3E";rhs="f16"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="sub";lhs="vec2%3Cf16%3E";rhs="vec2%3Cf16%3E"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="sub";lhs="vec2%3Cf32%3E";rhs="f32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="sub";lhs="vec2%3Cf32%3E";rhs="vec2%3Cf32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -2306,24 +2370,28 @@ [:op="sub";lhs="vec3%3Cf16%3E";rhs="f16"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="sub";lhs="vec3%3Cf16%3E";rhs="vec3%3Cf16%3E"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="sub";lhs="vec3%3Cf32%3E";rhs="f32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="sub";lhs="vec3%3Cf32%3E";rhs="vec3%3Cf32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -2338,44 +2406,50 @@ [:op="sub";lhs="vec3%3Ci32%3E";rhs="vec3%3Ci32%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="sub";lhs="vec3%3Cu32%3E";rhs="u32"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="sub";lhs="vec3%3Cu32%3E";rhs="vec3%3Cu32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="sub";lhs="vec4%3Cf16%3E";rhs="f16"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="sub";lhs="vec4%3Cf16%3E";rhs="vec4%3Cf16%3E"] expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:op="sub";lhs="vec4%3Cf32%3E";rhs="f32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="sub";lhs="vec4%3Cf32%3E";rhs="vec4%3Cf32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -2396,14 +2470,16 @@ [:op="sub";lhs="vec4%3Cu32%3E";rhs="u32"] expected: - if os == "win": FAIL + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:op="sub";lhs="vec4%3Cu32%3E";rhs="vec4%3Cu32%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html.ini index 5dc2b7a2a987..279afca38916 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/and_or_xor/cts.https.html.ini @@ -102,25 +102,27 @@ [:lhs="abstract-float";rhs="abstract-float"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="abstract-int"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="bool"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="f16"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="f32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="i32"] expected: @@ -140,11 +142,12 @@ [:lhs="abstract-float";rhs="vec2%3Cabstract-int%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cbool%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cf16%3E"] expected: @@ -178,13 +181,16 @@ [:lhs="abstract-int";rhs="f32"] [:lhs="abstract-int";rhs="i32"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-int";rhs="u32"] expected: if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:lhs="abstract-int";rhs="vec2%3Cabstract-float%3E"] @@ -202,11 +208,13 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:lhs="abstract-int";rhs="vec2%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:lhs="bool";rhs="abstract-float"] @@ -320,7 +328,8 @@ [:lhs="f32";rhs="bool"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:lhs="f32";rhs="f16"] expected: @@ -355,7 +364,8 @@ [:lhs="f32";rhs="vec2%3Cbool%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:lhs="f32";rhs="vec2%3Cf16%3E"] expected: @@ -532,6 +542,7 @@ [:lhs="vec2%3Cabstract-float%3E";rhs="bool"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-float%3E";rhs="f16"] @@ -805,12 +816,14 @@ [:lhs="vec2%3Cf32%3E";rhs="abstract-float"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="abstract-int"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -823,12 +836,14 @@ [:lhs="vec2%3Cf32%3E";rhs="f16"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="f32"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1450,14 +1465,13 @@ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-float"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-int"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="bool"] @@ -1467,34 +1481,33 @@ [:lhs="vec4%3Cabstract-int%3E";rhs="f16"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="f32"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="i32"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="u32"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"] @@ -1504,22 +1517,23 @@ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cbool%3E";rhs="abstract-float"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html.ini index 57a21099576b..ce33bf06b9f6 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/bitwise_shift/cts.https.html.ini @@ -75,6 +75,8 @@ [:lhs="abstract-float";rhs="bool"] [:lhs="abstract-float";rhs="f16"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="f32"] @@ -84,12 +86,15 @@ [:lhs="abstract-float";rhs="u32"] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cabstract-float%3E"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cabstract-int%3E"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cbool%3E"] @@ -99,7 +104,7 @@ [:lhs="abstract-float";rhs="vec2%3Cf32%3E"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Ci32%3E"] expected: @@ -107,8 +112,7 @@ [:lhs="abstract-float";rhs="vec2%3Cu32%3E"] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-int";rhs="abstract-float"] @@ -229,11 +233,12 @@ [:lhs="f32";rhs="abstract-int"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:lhs="f32";rhs="bool"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="f32";rhs="f16"] expected: @@ -261,7 +266,8 @@ [:lhs="f32";rhs="vec2%3Cbool%3E"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:lhs="f32";rhs="vec2%3Cf16%3E"] expected: @@ -421,26 +427,31 @@ [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-float"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-float%3E";rhs="abstract-int"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-float%3E";rhs="bool"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-float%3E";rhs="f16"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-float%3E";rhs="f32"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -469,6 +480,7 @@ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cbool%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -684,12 +696,14 @@ [:lhs="vec2%3Cf32%3E";rhs="abstract-float"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="abstract-int"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -723,6 +737,7 @@ [:lhs="vec2%3Cf32%3E";rhs="u32"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -984,7 +999,8 @@ [:lhs="vec3%3Cabstract-int%3E";rhs="u32"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"] @@ -1009,10 +1025,12 @@ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec3%3Cbool%3E";rhs="abstract-float"] @@ -1311,60 +1329,77 @@ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-float"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-int"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="bool"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="f16"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="f32"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="i32"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="u32"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cbool%3E";rhs="abstract-float"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html.ini index 013a4d1afa7b..701ee8f21d53 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/comparison/cts.https.html.ini @@ -153,15 +153,14 @@ [:op="le";type="sampler";control=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:op="le";type="sampler";control=true] expected: if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:op="le";type="struct";control=false] expected: @@ -173,7 +172,7 @@ [:op="le";type="texture";control=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:op="le";type="texture";control=true] expected: @@ -278,71 +277,81 @@ if os == "mac" and not debug: TIMEOUT [:lhs="abstract-float";rhs="abstract-float"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="abstract-int"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="bool"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:lhs="abstract-float";rhs="f16"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: FAIL if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="f32"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="i32"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="u32"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cabstract-float%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cabstract-int%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cbool%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:lhs="abstract-float";rhs="vec2%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cf32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Ci32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cu32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-int";rhs="abstract-float"] @@ -384,6 +393,8 @@ [:lhs="abstract-int";rhs="vec2%3Ci32%3E"] [:lhs="abstract-int";rhs="vec2%3Cu32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:lhs="bool";rhs="abstract-float"] expected: @@ -526,13 +537,14 @@ [:lhs="f32";rhs="abstract-int"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:lhs="f32";rhs="bool"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -574,7 +586,7 @@ [:lhs="f32";rhs="vec2%3Cbool%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -1124,12 +1136,14 @@ [:lhs="vec2%3Cf32%3E";rhs="f16"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="f32"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1155,6 +1169,7 @@ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1462,7 +1477,7 @@ [:lhs="vec3%3Cabstract-int%3E";rhs="vec2%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec3%3Cbool%3E";rhs="abstract-float"] @@ -1791,32 +1806,32 @@ [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-float"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="abstract-int"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="bool"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="f16"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="f32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="u32"] @@ -1827,27 +1842,27 @@ [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec4%3Cabstract-int%3E";rhs="vec2%3Ci32%3E"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html.ini index c661b9087a11..2fa9cf2e9681 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/binary/div_rem/cts.https.html.ini @@ -75,8 +75,7 @@ [:lhs="abstract-float";rhs="f16"] expected: - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="f32"] expected: @@ -94,14 +93,13 @@ [:lhs="abstract-float";rhs="vec2%3Cabstract-float%3E"] expected: - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cabstract-int%3E"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="abstract-float";rhs="vec2%3Cbool%3E"] expected: @@ -123,8 +121,7 @@ [:lhs="abstract-float";rhs="vec2%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="abstract-int";rhs="abstract-float"] expected: FAIL @@ -277,8 +274,7 @@ [:lhs="f32";rhs="bool"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:lhs="f32";rhs="f16"] expected: @@ -508,12 +504,14 @@ [:lhs="vec2%3Cabstract-float%3E";rhs="i32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-float%3E";rhs="u32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cabstract-float%3E"] @@ -547,12 +545,14 @@ [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-float%3E";rhs="vec2%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cabstract-int%3E";rhs="abstract-float"] @@ -759,7 +759,8 @@ [:lhs="vec2%3Cf32%3E";rhs="abstract-float"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="abstract-int"] @@ -770,17 +771,20 @@ [:lhs="vec2%3Cf32%3E";rhs="bool"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="f16"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="f32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="i32"] @@ -799,18 +803,21 @@ [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-float%3E"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cabstract-int%3E"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cbool%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:lhs="vec2%3Cf32%3E";rhs="vec2%3Cf16%3E"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html.ini index c9836a10ee8c..e74bd270f38c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/atan2/cts.https.html.ini @@ -321,6 +321,7 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,atan2:values:*] expected: if os == "win" and debug: TIMEOUT + if os == "win" and not debug: [OK, TIMEOUT] if os == "linux" and debug: TIMEOUT if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac" and debug: TIMEOUT @@ -380,8 +381,7 @@ [:stage="constant";type="vec4%3Cabstract-float%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="constant";type="vec4%3Cf16%3E"] @@ -439,15 +439,14 @@ [:stage="override";type="vec4%3Cf16%3E"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL [:stage="override";type="vec4%3Cf32%3E"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html.ini index 2a9147d4af7c..b8a46a9fd0ea 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/barriers/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,barriers:no_return_value:*] + expected: + if os == "mac": SKIP [:assign=false;rhs="bar"] [:assign=false;rhs="storageBarrier"] @@ -17,6 +19,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,barriers:only_in_compute:*] + expected: + if os == "mac": SKIP [:entry_point="compute";call="bar"] [:entry_point="compute";call="storageBarrier"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/clamp/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/clamp/cts.https.html.ini index 0a5223ee732a..81d523dd71c2 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/clamp/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/clamp/cts.https.html.ini @@ -1,8 +1,5 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,clamp:values:*] - expected: - if os == "win" and debug: [OK, TIMEOUT] - if os == "linux": [OK, TIMEOUT] - if os == "mac": [OK, TIMEOUT] + expected: [OK, TIMEOUT] [:stage="constant";type="abstract-float"] expected: if os == "win": FAIL @@ -47,7 +44,8 @@ [:stage="constant";type="vec2%3Cf32%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:stage="constant";type="vec2%3Ci32%3E"] @@ -151,11 +149,7 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="u32"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec2%3Cf16%3E"] expected: @@ -171,18 +165,10 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec2%3Ci32%3E"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec2%3Cu32%3E"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec3%3Cf16%3E"] expected: @@ -198,18 +184,10 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec3%3Ci32%3E"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec3%3Cu32%3E"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec4%3Cf16%3E"] expected: @@ -225,15 +203,7 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec4%3Ci32%3E"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec4%3Cu32%3E"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html.ini index 23edbb0f78f0..cf8d2f2bce87 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/derivatives/cts.https.html.ini @@ -443,23 +443,24 @@ [:type="vec4%3Cu32%3E";call="dpdy"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:type="vec4%3Cu32%3E";call="dpdyCoarse"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:type="vec4%3Cu32%3E";call="dpdyFine"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:type="vec4%3Cu32%3E";call="fwidth"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:type="vec4%3Cu32%3E";call="fwidthCoarse"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html.ini index 381ab991cd59..f8e7ece3a26c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/distance/cts.https.html.ini @@ -101,7 +101,7 @@ [:stage="constant";type="vec2%3Cabstract-float%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html.ini index a9490c3ed3f2..c68476ce699e 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/extractBits/cts.https.html.ini @@ -27,11 +27,11 @@ [:input="array"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:input="array_runtime"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:input="atomic"] expected: @@ -41,10 +41,12 @@ if os == "mac": FAIL [:input="bool"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:input="enumerant"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:input="f16"] @@ -56,7 +58,7 @@ [:input="ptr"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:input="ptr_deref"] expected: @@ -71,7 +73,7 @@ [:input="struct"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:input="texture"] expected: @@ -89,18 +91,26 @@ [:input="vec3%3Cabstract-float%3E"] [:input="vec3%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:input="vec3%3Cf32%3E"] [:input="vec4%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:input="vec4%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:input="vec4%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:input="vec_bool"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,extractBits:values:*] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html.ini index 65e7c8aabd3a..d1a61aa8d459 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/faceForward/cts.https.html.ini @@ -91,7 +91,7 @@ [:stage="constant";type="vec2%3Cabstract-float%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL @@ -100,13 +100,14 @@ [:stage="constant";type="vec2%3Cf16%3E"] expected: + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="constant";type="vec2%3Cf32%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL @@ -114,7 +115,7 @@ expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL @@ -124,6 +125,7 @@ [:stage="constant";type="vec3%3Cf16%3E"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -132,7 +134,7 @@ expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -141,7 +143,7 @@ expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -152,55 +154,56 @@ [:stage="constant";type="vec4%3Cf16%3E"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="constant";type="vec4%3Cf32%3E"] expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec2%3Cf16%3E"] expected: if os == "win": [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec2%3Cf32%3E"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec3%3Cf16%3E"] expected: if os == "win": [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec3%3Cf32%3E"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec4%3Cf16%3E"] expected: if os == "win": [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec4%3Cf32%3E"] expected: if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and debug: FAIL + if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html.ini index ed388e09d579..628b560a2af5 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/firstLeadingBit/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:arguments:*] + expected: + if os == "mac": SKIP [:test="alias"] [:test="array"] @@ -44,6 +46,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:float_argument:*] + expected: + if os == "mac": SKIP [:type="abstract-float"] [:type="f16"] @@ -75,6 +79,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:must_use:*] + expected: + if os == "mac": SKIP [:use=false] expected: if os == "win": FAIL @@ -84,6 +90,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,firstLeadingBit:values:*] + expected: + if os == "mac": SKIP [:stage="constant";type="i32"] expected: if os == "win": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html.ini index f16a82d0c5b5..4064375b0008 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/fract/cts.https.html.ini @@ -38,6 +38,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,fract:values:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:stage="constant";type="abstract-float"] expected: FAIL @@ -88,28 +90,48 @@ [:stage="override";type="f16"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="f32"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:stage="override";type="vec2%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec2%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:stage="override";type="vec3%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec3%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:stage="override";type="vec4%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec4%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html.ini index dcab7f8f4bee..a3e82ca19db0 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/insertBits/cts.https.html.ini @@ -271,7 +271,11 @@ if os == "mac": FAIL [:stage="constant";type="vec3%3Ci32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:stage="constant";type="vec3%3Cu32%3E"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/length/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/length/cts.https.html.ini index e43632302722..2cd37d888f9d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/length/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/length/cts.https.html.ini @@ -137,8 +137,7 @@ expected: [OK, TIMEOUT] [:stage="constant";type="vec4%3Cabstract-float%3E"] expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL + if os == "win": [FAIL, TIMEOUT, NOTRUN] if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: FAIL @@ -154,16 +153,12 @@ [:stage="constant";type="vec4%3Cf16%3E"] expected: if os == "win" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="constant";type="vec4%3Cf32%3E"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:stage="override";type="vec4%3Cf16%3E"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html.ini index 0e42ffe7cd38..594f6f47012d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/min/cts.https.html.ini @@ -35,7 +35,7 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,min:values:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] [:stage="constant";type="abstract-float"] expected: if os == "win": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/modf/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/modf/cts.https.html.ini index a20d4a5ccf5d..110c2402fe98 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/modf/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/modf/cts.https.html.ini @@ -20,6 +20,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,modf:values:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:stage="constant";type="abstract-float"] expected: FAIL @@ -88,14 +90,24 @@ [:stage="override";type="vec3%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec3%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:stage="override";type="vec4%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec4%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html.ini index ee43ee37d034..ab2c455400ed 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/pack4xU8/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:args:*] + expected: + if os == "mac": SKIP [:arg="bad_0args"] [:arg="bad_0array"] @@ -27,6 +29,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:must_use:*] + expected: + if os == "mac": SKIP [:use=false] [:use=true] @@ -36,12 +40,16 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:supported:*] + expected: + if os == "mac": SKIP [:requires=false] [:requires=true] [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,pack4xU8:unsupported:*] + expected: + if os == "mac": SKIP [:requires=false] [:requires=true] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html.ini index f6a0326ce560..cabfa8acf815 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/select/cts.https.html.ini @@ -23,6 +23,7 @@ [:type1="abstract-float";type2="bool"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="f16"] @@ -41,6 +42,7 @@ [:type1="abstract-float";type2="i32"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -52,7 +54,8 @@ [:type1="abstract-float";type2="vec2%3Cabstract-float%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec2%3Cabstract-int%3E"] @@ -69,16 +72,19 @@ [:type1="abstract-float";type2="vec2%3Cf16%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec2%3Cf32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec2%3Ci32%3E"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -91,7 +97,9 @@ [:type1="abstract-float";type2="vec3%3Cabstract-float%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec3%3Cabstract-int%3E"] @@ -108,16 +116,21 @@ [:type1="abstract-float";type2="vec3%3Cf16%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec3%3Cf32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec3%3Ci32%3E"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -130,12 +143,15 @@ [:type1="abstract-float";type2="vec4%3Cabstract-float%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec4%3Cabstract-int%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec4%3Cbool%3E"] @@ -146,12 +162,16 @@ [:type1="abstract-float";type2="vec4%3Cf16%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec4%3Cf32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec4%3Ci32%3E"] @@ -161,7 +181,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-float";type2="vec4%3Cu32%3E"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="abstract-float"] expected: @@ -205,8 +229,7 @@ expected: if os == "win" and debug: [PASS, FAIL] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] @@ -214,8 +237,7 @@ expected: if os == "win" and debug: [PASS, FAIL] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] @@ -236,27 +258,29 @@ [:type1="abstract-int";type2="vec2%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec2%3Ci32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec2%3Cu32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec3%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec3%3Cabstract-int%3E"] @@ -271,27 +295,29 @@ [:type1="abstract-int";type2="vec3%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec3%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec3%3Ci32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec3%3Cu32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec4%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec4%3Cabstract-int%3E"] @@ -306,22 +332,24 @@ [:type1="abstract-int";type2="vec4%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec4%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec4%3Ci32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="abstract-int";type2="vec4%3Cu32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:type1="bool";type2="abstract-float"] @@ -2345,10 +2373,12 @@ [:type1="vec3%3Cbool%3E";type2="f32"] [:type1="vec3%3Cbool%3E";type2="i32"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:type1="vec3%3Cbool%3E";type2="u32"] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:type1="vec3%3Cbool%3E";type2="vec2%3Cabstract-float%3E"] @@ -2361,6 +2391,8 @@ [:type1="vec3%3Cbool%3E";type2="vec2%3Cf32%3E"] [:type1="vec3%3Cbool%3E";type2="vec2%3Ci32%3E"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:type1="vec3%3Cbool%3E";type2="vec2%3Cu32%3E"] expected: @@ -2399,12 +2431,16 @@ [:type1="vec3%3Cbool%3E";type2="vec4%3Cbool%3E"] [:type1="vec3%3Cbool%3E";type2="vec4%3Cf16%3E"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:type1="vec3%3Cbool%3E";type2="vec4%3Cf32%3E"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:type1="vec3%3Cbool%3E";type2="vec4%3Ci32%3E"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:type1="vec3%3Cbool%3E";type2="vec4%3Cu32%3E"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html.ini index 5005cbafc519..219d5417e33a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/sqrt/cts.https.html.ini @@ -48,6 +48,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,sqrt:values:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:stage="constant";type="abstract-float"] expected: FAIL @@ -105,21 +107,36 @@ [:stage="override";type="vec2%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec2%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:stage="override";type="vec3%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec3%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:stage="override";type="vec4%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec4%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html.ini index 5bfa2675e133..ba4530851dc6 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/tan/cts.https.html.ini @@ -38,6 +38,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,tan:values:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:stage="constant";type="abstract-float"] expected: FAIL @@ -88,28 +90,48 @@ [:stage="override";type="f16"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="f32"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:stage="override";type="vec2%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec2%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:stage="override";type="vec3%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec3%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:stage="override";type="vec4%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": FAIL [:stage="override";type="vec4%3Cf32%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html.ini index 5f64bd59c2a0..2298061c272b 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGather/cts.https.html.ini @@ -1,6 +1,6 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGather:array_index_argument:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-float"] @@ -161,6 +161,7 @@ [:textureType="texture_depth_2d_array";arrayIndexType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="u32"] expected: @@ -190,11 +191,11 @@ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"] @@ -220,13 +221,12 @@ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"] expected: @@ -243,9 +243,11 @@ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf32%3E"] expected: + if os == "win" and not debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Ci32%3E"] @@ -255,147 +257,147 @@ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="abstract-float"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="abstract-int"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="bool"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="f16"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="f32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -447,7 +449,7 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureGather:component_argument:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:textureType="texture_2d%3Cf32%3E";componentType="abstract-float"] @@ -506,14 +508,22 @@ [:textureType="texture_2d%3Cf32%3E";componentType="vec4%3Cu32%3E"] [:textureType="texture_2d_array%3Cf32%3E";componentType="abstract-float"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="abstract-int"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="bool"] [:textureType="texture_2d_array%3Cf32%3E";componentType="f16"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="f32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="i32"] expected: @@ -524,8 +534,12 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="vec2%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="vec2%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="vec2%3Cbool%3E"] @@ -550,8 +564,12 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="vec3%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="vec3%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="vec3%3Cf16%3E"] expected: @@ -574,8 +592,12 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="vec4%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="vec4%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";componentType="vec4%3Cf16%3E"] expected: @@ -616,7 +638,7 @@ [:textureType="texture_cube%3Cf32%3E";componentType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";componentType="u32"] expected: @@ -646,7 +668,7 @@ [:textureType="texture_cube%3Cf32%3E";componentType="vec2%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";componentType="vec2%3Cu32%3E"] expected: @@ -702,7 +724,7 @@ [:textureType="texture_cube%3Cf32%3E";componentType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";componentType="vec4%3Cf32%3E"] expected: @@ -748,17 +770,17 @@ [:textureType="texture_cube_array%3Cf32%3E";componentType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cabstract-int%3E"] @@ -774,32 +796,32 @@ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec2%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cbool%3E"] @@ -810,32 +832,32 @@ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec3%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cbool%3E"] @@ -845,22 +867,22 @@ [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";componentType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -989,19 +1011,27 @@ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cu32%3E"] [:textureType="texture_cube%3Cf32%3E";coordType="abstract-float"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="abstract-int"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="bool"] [:textureType="texture_cube%3Cf32%3E";coordType="f16"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="f32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="u32"] expected: @@ -1009,19 +1039,29 @@ if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cu32%3E"] expected: @@ -1029,24 +1069,33 @@ if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-int%3E"] expected: if os == "win" and debug: FAIL if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, FAIL] if os == "mac": FAIL [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cu32%3E"] expected: @@ -1058,8 +1107,12 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf16%3E"] expected: @@ -1077,8 +1130,7 @@ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-float"] expected: @@ -1093,8 +1145,7 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="bool"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="f16"] expected: @@ -1108,12 +1159,12 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"] @@ -1144,12 +1195,12 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"] @@ -1182,17 +1233,17 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"] @@ -1207,47 +1258,47 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="abstract-float"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="abstract-int"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="bool"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="f16"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="f32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="i32"] @@ -1258,7 +1309,9 @@ [:textureType="texture_depth_2d";coordType="u32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="vec2%3Cabstract-float%3E"] @@ -1277,7 +1330,7 @@ [:textureType="texture_depth_2d";coordType="vec2%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="vec2%3Cf16%3E"] @@ -1294,12 +1347,15 @@ [:textureType="texture_depth_2d";coordType="vec2%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="vec2%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="vec3%3Cabstract-float%3E"] @@ -1316,7 +1372,7 @@ [:textureType="texture_depth_2d";coordType="vec3%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="vec3%3Cf16%3E"] @@ -1333,12 +1389,13 @@ [:textureType="texture_depth_2d";coordType="vec3%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="vec3%3Cu32%3E"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1356,7 +1413,7 @@ [:textureType="texture_depth_2d";coordType="vec4%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="vec4%3Cf16%3E"] @@ -1373,12 +1430,14 @@ [:textureType="texture_depth_2d";coordType="vec4%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";coordType="vec4%3Cu32%3E"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1394,7 +1453,7 @@ [:textureType="texture_depth_2d_array";coordType="bool"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1422,7 +1481,7 @@ [:textureType="texture_depth_2d_array";coordType="vec2%3Cbool%3E"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1447,6 +1506,7 @@ [:textureType="texture_depth_2d_array";coordType="vec3%3Cbool%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1867,7 +1927,7 @@ [:textureType="texture_depth_2d";offsetType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="u32"] expected: @@ -1935,8 +1995,7 @@ [:textureType="texture_depth_2d";offsetType="vec3%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-float%3E"] expected: @@ -1952,7 +2011,7 @@ [:textureType="texture_depth_2d";offsetType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec4%3Cf32%3E"] expected: @@ -1967,7 +2026,8 @@ [:textureType="texture_depth_2d";offsetType="vec4%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";offsetType="abstract-float"] expected: @@ -1982,7 +2042,8 @@ [:textureType="texture_depth_2d_array";offsetType="bool"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";offsetType="f16"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html.ini index 504773d91a0f..384e003efb93 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureGatherCompare/cts.https.html.ini @@ -317,14 +317,22 @@ if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec2%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec2%3Cbool%3E"] [:textureType="texture_depth_cube";coordType="vec2%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec2%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec2%3Ci32%3E"] expected: @@ -339,14 +347,14 @@ [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-float%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-int%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -359,7 +367,7 @@ [:textureType="texture_depth_cube";coordType="vec3%3Cf32%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": FAIL @@ -378,6 +386,8 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec4%3Cbool%3E"] @@ -697,7 +707,7 @@ [:textureType="texture_depth_cube";depthRefType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";depthRefType="u32"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html.ini index 80782cf9a803..bf236da65ab5 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureLoad/cts.https.html.ini @@ -443,7 +443,8 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:textureType="texture_2d_array";coordType="u32"] expected: @@ -484,6 +485,7 @@ [:textureType="texture_2d_array";coordType="vec2%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array";coordType="vec2%3Cu32%3E"] expected: @@ -527,8 +529,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_2d_array";coordType="vec3%3Cu32%3E"] expected: @@ -1694,6 +1695,7 @@ [:textureType="texture_2d_array";levelType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array";levelType="u32"] expected: @@ -1733,7 +1735,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_2d_array";levelType="vec2%3Cu32%3E"] expected: @@ -1775,8 +1777,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_2d_array";levelType="vec3%3Cu32%3E"] expected: @@ -1805,6 +1806,7 @@ [:textureType="texture_2d_array";levelType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array";levelType="vec4%3Cf32%3E"] expected: @@ -2012,13 +2014,12 @@ [:textureType="texture_depth_2d";levelType="abstract-float"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="abstract-int"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="bool"] @@ -2030,14 +2031,13 @@ [:textureType="texture_depth_2d";levelType="f16"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="f32"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="i32"] @@ -2049,21 +2049,20 @@ [:textureType="texture_depth_2d";levelType="u32"] expected: if os == "win": [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="vec2%3Cabstract-float%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="vec2%3Cabstract-int%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="vec2%3Cbool%3E"] @@ -2081,8 +2080,7 @@ [:textureType="texture_depth_2d";levelType="vec2%3Cf32%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="vec2%3Ci32%3E"] @@ -2103,15 +2101,13 @@ [:textureType="texture_depth_2d";levelType="vec3%3Cabstract-int%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="vec3%3Cbool%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="vec3%3Cf16%3E"] @@ -2145,15 +2141,13 @@ [:textureType="texture_depth_2d";levelType="vec4%3Cabstract-int%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="vec4%3Cbool%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";levelType="vec4%3Cf16%3E"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html.ini index 0ff12452ac44..e6359527236a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSample/cts.https.html.ini @@ -1,7 +1,7 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSample:array_index_argument:*] expected: - if os == "linux" and debug: TIMEOUT if os == "linux" and not debug: [OK, TIMEOUT] + if os == "mac": SKIP [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-float"] [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-int"] @@ -129,8 +129,6 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="u32"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cabstract-float%3E"] expected: @@ -155,8 +153,6 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cu32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"] expected: @@ -177,12 +173,8 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Ci32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cu32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"] expected: @@ -203,126 +195,69 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Ci32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cu32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="abstract-float"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="abstract-int"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="bool"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="f16"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="f32"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="i32"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="u32"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-float%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-int%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cbool%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf16%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Ci32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-float%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-int%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cbool%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf16%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Ci32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-float%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-int%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cbool%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf16%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Ci32%3E"] - expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] @@ -330,6 +265,7 @@ expected: if os == "win": TIMEOUT if os == "linux": TIMEOUT + if os == "mac": SKIP [:textureType="texture_1d%3Cf32%3E";coordType="abstract-float"] [:textureType="texture_1d%3Cf32%3E";coordType="abstract-int"] @@ -786,7 +722,8 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-int"] expected: - if os == "win": [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="bool"] @@ -826,7 +763,7 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cbool%3E"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf16%3E"] @@ -862,6 +799,7 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cbool%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf16%3E"] @@ -897,6 +835,7 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cbool%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf16%3E"] @@ -1481,6 +1420,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSample:offset_argument,non_const:*] + expected: + if os == "mac": SKIP [:textureType="texture_2d%3Cf32%3E";varType="c"] expected: if os == "win": FAIL @@ -1529,7 +1470,10 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSample:offset_argument:*] expected: - if os == "linux": TIMEOUT + if os == "win" and debug: [OK, TIMEOUT] + if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] + if os == "mac": SKIP [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-float"] [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-int"] @@ -1935,7 +1879,8 @@ [:textureType="texture_depth_2d_array";offsetType="vec3%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";offsetType="vec4%3Cabstract-float%3E"] expected: @@ -1968,10 +1913,14 @@ [:textureType="texture_depth_2d_array";offsetType="vec4%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSample:only_in_fragment:*] + expected: + if os == "mac": SKIP [:textureType="texture_1d%3Cf32%3E";entryPoint="compute";offset=false] expected: if os == "win": FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html.ini index a9f22b02c126..79e5d34cdf15 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleBias/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:array_index_argument:*] + expected: + if os == "linux" and debug: [OK, TIMEOUT] [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-float"] [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-int"] @@ -71,6 +73,8 @@ [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-float"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="abstract-int"] expected: @@ -82,64 +86,106 @@ [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="bool"] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f16"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="f32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="i32"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [PASS, FAIL] if os == "mac" and not debug: FAIL [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="u32"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac" and debug: [PASS, FAIL] if os == "mac" and not debug: FAIL [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cbool%3E"] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Ci32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cu32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cbool%3E"] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Ci32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec3%3Cu32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cbool%3E"] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Ci32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec4%3Cu32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:bias_argument:*] @@ -237,8 +283,12 @@ [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Cbool%3E"] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec2%3Ci32%3E"] expected: @@ -249,14 +299,20 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cabstract-int%3E"] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cbool%3E"] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec3%3Ci32%3E"] expected: @@ -267,14 +323,20 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cabstract-int%3E"] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cbool%3E"] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";biasType="vec4%3Ci32%3E"] expected: @@ -416,7 +478,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:coords_argument:*] expected: - if os == "linux": TIMEOUT + if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:textureType="texture_2d%3Cf32%3E";coordType="abstract-float"] @@ -561,16 +624,24 @@ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cu32%3E"] [:textureType="texture_3d%3Cf32%3E";coordType="abstract-float"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="abstract-int"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="bool"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="f16"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="f32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="i32"] expected: @@ -591,6 +662,8 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cf16%3E"] expected: @@ -627,6 +700,8 @@ if os == "mac" and not debug: FAIL [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cf16%3E"] expected: @@ -648,8 +723,7 @@ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"] expected: @@ -660,6 +734,8 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf16%3E"] expected: @@ -679,8 +755,7 @@ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="abstract-float"] expected: @@ -864,12 +939,14 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="i32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="u32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"] @@ -903,12 +980,14 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"] @@ -945,12 +1024,14 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"] @@ -972,22 +1053,26 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf16%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1029,7 +1114,7 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:offset_argument:*] expected: if os == "linux" and debug: [OK, TIMEOUT] - if os == "mac": TIMEOUT + if os == "mac": [OK, TIMEOUT] [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-float"] [:textureType="texture_2d%3Cf32%3E";offsetType="abstract-int"] @@ -1183,7 +1268,7 @@ [:textureType="texture_3d%3Cf32%3E";offsetType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";offsetType="u32"] expected: @@ -1216,8 +1301,7 @@ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"] expected: @@ -1254,7 +1338,7 @@ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"] expected: @@ -1271,6 +1355,7 @@ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf32%3E"] expected: @@ -1284,7 +1369,7 @@ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleBias:only_in_fragment:*] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html.ini index c7e7012c8de2..7946d5afa622 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompare/cts.https.html.ini @@ -377,8 +377,7 @@ expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec3%3Cu32%3E"] expected: @@ -404,8 +403,7 @@ expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec4%3Cu32%3E"] expected: @@ -416,13 +414,15 @@ [:textureType="texture_depth_cube_array";coordType="abstract-float"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="abstract-int"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="bool"] @@ -433,18 +433,21 @@ [:textureType="texture_depth_cube_array";coordType="f16"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="f32"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="i32"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="u32"] @@ -457,13 +460,15 @@ [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-float%3E"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec2%3Cabstract-int%3E"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec2%3Cbool%3E"] @@ -474,18 +479,21 @@ [:textureType="texture_depth_cube_array";coordType="vec2%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec2%3Cf32%3E"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec2%3Ci32%3E"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec2%3Cu32%3E"] @@ -497,10 +505,12 @@ [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-float%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec3%3Cabstract-int%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec3%3Cbool%3E"] @@ -511,16 +521,19 @@ [:textureType="texture_depth_cube_array";coordType="vec3%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec3%3Cf32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec3%3Ci32%3E"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec3%3Cu32%3E"] @@ -533,13 +546,15 @@ [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-float%3E"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec4%3Cabstract-int%3E"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec4%3Cbool%3E"] @@ -550,18 +565,21 @@ [:textureType="texture_depth_cube_array";coordType="vec4%3Cf16%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec4%3Cf32%3E"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec4%3Ci32%3E"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="vec4%3Cu32%3E"] @@ -750,15 +768,15 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";depthRefType="u32"] expected: if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";depthRefType="vec2%3Cabstract-float%3E"] expected: @@ -793,8 +811,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";depthRefType="vec2%3Cu32%3E"] expected: @@ -836,8 +853,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";depthRefType="vec3%3Cu32%3E"] expected: @@ -879,8 +895,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";depthRefType="vec4%3Cu32%3E"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html.ini index 0b8fe0609769..da200e3f11b3 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleCompareLevel/cts.https.html.ini @@ -334,8 +334,7 @@ [:textureType="texture_depth_cube";coordType="vec2%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec3%3Cabstract-float%3E"] expected: @@ -374,8 +373,7 @@ [:textureType="texture_depth_cube";coordType="vec3%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";coordType="vec4%3Cabstract-float%3E"] expected: @@ -407,8 +405,7 @@ [:textureType="texture_depth_cube";coordType="vec4%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="abstract-float"] expected: @@ -423,7 +420,8 @@ [:textureType="texture_depth_cube_array";coordType="bool"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";coordType="f16"] expected: @@ -701,6 +699,7 @@ [:textureType="texture_depth_cube";depthRefType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";depthRefType="u32"] expected: @@ -730,7 +729,7 @@ [:textureType="texture_depth_cube";depthRefType="vec2%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube";depthRefType="vec2%3Cu32%3E"] expected: @@ -812,7 +811,8 @@ [:textureType="texture_depth_cube_array";depthRefType="bool"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";depthRefType="f16"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html.ini index 1ca2cd4d2188..2e3f2a1dbf4a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleGrad/cts.https.html.ini @@ -114,6 +114,7 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:coords_argument:*] expected: + if os == "win" and debug: [OK, TIMEOUT] if os == "linux": TIMEOUT if os == "mac": TIMEOUT [:textureType="texture_2d%3Cf32%3E";coordType="abstract-float"] @@ -243,13 +244,12 @@ [:textureType="texture_3d%3Cf32%3E";coordType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="u32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"] @@ -268,13 +268,12 @@ [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"] expected: @@ -296,13 +295,12 @@ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"] expected: @@ -315,6 +313,7 @@ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf32%3E"] expected: @@ -328,8 +327,7 @@ [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="abstract-float"] expected: @@ -344,7 +342,8 @@ [:textureType="texture_cube%3Cf32%3E";coordType="bool"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="f16"] expected: @@ -475,12 +474,12 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-float"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-int"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="bool"] @@ -490,13 +489,12 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="f16"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="f32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="i32"] @@ -507,7 +505,9 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="u32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"] @@ -541,12 +541,15 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"] @@ -580,12 +583,15 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"] @@ -602,7 +608,7 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf16%3E"] @@ -619,17 +625,20 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cu32%3E"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleGrad:ddX_argument:*] expected: + if os == "win" and debug: [OK, TIMEOUT] if os == "linux": TIMEOUT if os == "mac": TIMEOUT [:textureType="texture_2d%3Cf32%3E";ddxType="abstract-float"] @@ -759,11 +768,12 @@ [:textureType="texture_3d%3Cf32%3E";ddxType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddxType="u32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddxType="vec2%3Cabstract-float%3E"] @@ -782,6 +792,7 @@ [:textureType="texture_3d%3Cf32%3E";ddxType="vec2%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddxType="vec2%3Cu32%3E"] expected: @@ -834,7 +845,7 @@ [:textureType="texture_3d%3Cf32%3E";ddxType="vec4%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddxType="vec4%3Cu32%3E"] expected: @@ -854,7 +865,8 @@ [:textureType="texture_cube%3Cf32%3E";ddxType="bool"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";ddxType="f16"] expected: @@ -873,7 +885,7 @@ [:textureType="texture_cube%3Cf32%3E";ddxType="u32"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";ddxType="vec2%3Cabstract-float%3E"] @@ -908,7 +920,7 @@ [:textureType="texture_cube%3Cf32%3E";ddxType="vec2%3Cu32%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";ddxType="vec3%3Cabstract-float%3E"] @@ -945,7 +957,7 @@ [:textureType="texture_cube%3Cf32%3E";ddxType="vec3%3Cu32%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";ddxType="vec4%3Cabstract-float%3E"] @@ -980,32 +992,32 @@ [:textureType="texture_cube%3Cf32%3E";ddxType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="abstract-float"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="abstract-int"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="bool"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="f16"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="f32"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="i32"] @@ -1022,30 +1034,27 @@ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cbool%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec2%3Ci32%3E"] @@ -1062,20 +1071,18 @@ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cabstract-int%3E"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cbool%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cf16%3E"] @@ -1098,7 +1105,9 @@ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec3%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cabstract-float%3E"] @@ -1109,13 +1118,12 @@ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cbool%3E"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cf16%3E"] @@ -1138,6 +1146,7 @@ [:textureType="texture_cube_array%3Cf32%3E";ddxType="vec4%3Cu32%3E"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1268,6 +1277,8 @@ [:textureType="texture_3d%3Cf32%3E";ddyType="bool"] [:textureType="texture_3d%3Cf32%3E";ddyType="f16"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="f32"] @@ -1282,14 +1293,22 @@ if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cbool%3E"] [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec2%3Ci32%3E"] expected: @@ -1307,13 +1326,18 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Cabstract-int%3E"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Cbool%3E"] [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec3%3Cf32%3E"] expected: @@ -1333,18 +1357,23 @@ [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cabstract-float%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cbool%3E"] [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Cf32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";ddyType="vec4%3Ci32%3E"] expected: @@ -1557,8 +1586,7 @@ [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";ddyType="vec2%3Ci32%3E"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html.ini index e670ff32b4bc..352eb2fa8c4e 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureSampleLevel/cts.https.html.ini @@ -1,6 +1,6 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureSampleLevel:array_index_argument:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:textureType="texture_2d_array%3Cf32%3E";arrayIndexType="abstract-float"] @@ -87,6 +87,8 @@ if os == "mac": FAIL [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";arrayIndexType="vec2%3Cabstract-int%3E"] @@ -184,8 +186,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="u32"] expected: @@ -216,12 +217,12 @@ [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec2%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cabstract-float%3E"] @@ -246,18 +247,18 @@ [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec3%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-float%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cabstract-int%3E"] expected: @@ -270,24 +271,27 @@ [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cf32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_depth_2d_array";arrayIndexType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="abstract-float"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="abstract-int"] @@ -299,17 +303,17 @@ [:textureType="texture_depth_cube_array";arrayIndexType="bool"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="f16"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="f32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="i32"] @@ -328,107 +332,107 @@ [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec2%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec3%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_cube_array";arrayIndexType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -504,8 +508,12 @@ [:textureType="texture_2d_array%3Cf32%3E";coordType="f32"] [:textureType="texture_2d_array%3Cf32%3E";coordType="i32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="u32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"] expected: FAIL @@ -521,8 +529,12 @@ expected: FAIL [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Ci32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec2%3Cu32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"] @@ -531,36 +543,64 @@ [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cbool%3E"] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Ci32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec3%3Cu32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cbool%3E"] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf16%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cf32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Ci32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_2d_array%3Cf32%3E";coordType="vec4%3Cu32%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="abstract-float"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="abstract-int"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="bool"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="f16"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="f32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="i32"] expected: @@ -581,6 +621,8 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec2%3Cf16%3E"] expected: @@ -615,6 +657,8 @@ if os == "mac": FAIL [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cf16%3E"] expected: @@ -635,8 +679,7 @@ [:textureType="texture_3d%3Cf32%3E";coordType="vec3%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"] expected: @@ -647,14 +690,18 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cbool%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Cf32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";coordType="vec4%3Ci32%3E"] expected: @@ -699,11 +746,12 @@ [:textureType="texture_cube%3Cf32%3E";coordType="u32"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cabstract-int%3E"] @@ -718,22 +766,24 @@ [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Ci32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec2%3Cu32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"] @@ -757,7 +807,7 @@ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cf32%3E"] @@ -770,16 +820,18 @@ [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Ci32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec3%3Cu32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cabstract-int%3E"] @@ -794,57 +846,66 @@ [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Ci32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";coordType="vec4%3Cu32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-float"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="abstract-int"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="bool"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="f16"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="f32"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="i32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="u32"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cabstract-float%3E"] @@ -862,6 +923,7 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cbool%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cf16%3E"] @@ -878,12 +940,14 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec2%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cabstract-float%3E"] @@ -901,6 +965,7 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cbool%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cf16%3E"] @@ -917,12 +982,14 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec3%3Cu32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cabstract-float%3E"] @@ -940,6 +1007,7 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cbool%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cf16%3E"] @@ -956,7 +1024,8 @@ [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Ci32%3E"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";coordType="vec4%3Cu32%3E"] @@ -1001,7 +1070,7 @@ [:textureType="texture_depth_2d";coordType="vec2%3Cbool%3E"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1437,19 +1506,30 @@ [:textureType="texture_2d_array%3Cf32%3E";levelType="vec4%3Cu32%3E"] [:textureType="texture_3d%3Cf32%3E";levelType="abstract-float"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";levelType="abstract-int"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:textureType="texture_3d%3Cf32%3E";levelType="bool"] [:textureType="texture_3d%3Cf32%3E";levelType="f16"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";levelType="f32"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";levelType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";levelType="u32"] expected: @@ -1461,6 +1541,8 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Cbool%3E"] @@ -1475,6 +1557,7 @@ [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";levelType="vec2%3Cu32%3E"] expected: @@ -1486,6 +1569,8 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";levelType="vec3%3Cabstract-int%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";levelType="vec3%3Cbool%3E"] @@ -1520,6 +1605,7 @@ [:textureType="texture_3d%3Cf32%3E";levelType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";levelType="vec4%3Cf32%3E"] expected: @@ -1538,7 +1624,7 @@ [:textureType="texture_cube%3Cf32%3E";levelType="abstract-float"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="abstract-int"] @@ -1556,32 +1642,32 @@ [:textureType="texture_cube%3Cf32%3E";levelType="f16"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="f32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="u32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cbool%3E"] @@ -1592,32 +1678,32 @@ [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec2%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cbool%3E"] @@ -1628,84 +1714,86 @@ [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec3%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube%3Cf32%3E";levelType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="abstract-float"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="abstract-int"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="bool"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="f16"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="f32"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="i32"] @@ -1729,11 +1817,12 @@ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec2%3Cabstract-int%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="vec2%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="vec2%3Cf16%3E"] @@ -1769,11 +1858,13 @@ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Cabstract-int%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Cbool%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Cf16%3E"] @@ -1796,6 +1887,7 @@ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec3%3Cu32%3E"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1815,6 +1907,7 @@ [:textureType="texture_cube_array%3Cf32%3E";levelType="vec4%3Cbool%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_cube_array%3Cf32%3E";levelType="vec4%3Cf16%3E"] @@ -1875,7 +1968,7 @@ [:textureType="texture_depth_2d";levelType="vec2%3Cbool%3E"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -2365,6 +2458,7 @@ [:textureType="texture_3d%3Cf32%3E";offsetType="i32"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";offsetType="u32"] expected: @@ -2389,8 +2483,7 @@ [:textureType="texture_3d%3Cf32%3E";offsetType="vec2%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cabstract-float%3E"] @@ -2413,10 +2506,11 @@ [:textureType="texture_3d%3Cf32%3E";offsetType="vec3%3Cu32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-float%3E"] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cabstract-int%3E"] @@ -2425,6 +2519,7 @@ [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf16%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_3d%3Cf32%3E";offsetType="vec4%3Cf32%3E"] expected: @@ -2467,7 +2562,7 @@ [:textureType="texture_depth_2d";offsetType="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="u32"] @@ -2477,7 +2572,7 @@ [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec2%3Cabstract-int%3E"] @@ -2494,12 +2589,12 @@ [:textureType="texture_depth_2d";offsetType="vec2%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec2%3Ci32%3E"] @@ -2516,12 +2611,12 @@ [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec3%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec3%3Cbool%3E"] @@ -2531,17 +2626,17 @@ [:textureType="texture_depth_2d";offsetType="vec3%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec3%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec3%3Ci32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec3%3Cu32%3E"] @@ -2551,12 +2646,12 @@ [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec4%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec4%3Cbool%3E"] @@ -2566,12 +2661,12 @@ [:textureType="texture_depth_2d";offsetType="vec4%3Cf16%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec4%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:textureType="texture_depth_2d";offsetType="vec4%3Ci32%3E"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html.ini index 985aa47e826f..24d234b046ce 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/call/builtin/textureStore/cts.https.html.ini @@ -58,7 +58,7 @@ [cts.https.html?q=webgpu:shader,validation,expression,call,builtin,textureStore:coords_argument:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:textureType="texture_storage_1d";coordType="abstract-float"] @@ -247,7 +247,7 @@ [:textureType="texture_storage_2d_array";coordType="vec3%3Ci32%3E"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";coordType="vec3%3Cu32%3E"] expected: @@ -426,7 +426,7 @@ [:textureType="texture_storage_3d";coordType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -502,7 +502,7 @@ [:textureType="texture_storage_1d";valueType="vec3%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_1d";valueType="vec4%3Cabstract-float%3E"] expected: @@ -531,27 +531,27 @@ [:textureType="texture_storage_1d";valueType="vec4%3Cu32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="abstract-float"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="abstract-int"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="bool"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="f16"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="f32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="i32"] expected: @@ -563,15 +563,15 @@ [:textureType="texture_storage_2d";valueType="vec2%3Cabstract-float%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="vec2%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="vec2%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="vec2%3Cf16%3E"] expected: @@ -579,7 +579,7 @@ [:textureType="texture_storage_2d";valueType="vec2%3Cf32%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="vec2%3Ci32%3E"] expected: @@ -595,11 +595,11 @@ [:textureType="texture_storage_2d";valueType="vec3%3Cabstract-int%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="vec3%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="vec3%3Cf16%3E"] expected: @@ -630,7 +630,7 @@ [:textureType="texture_storage_2d";valueType="vec4%3Cbool%3E"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d";valueType="vec4%3Cf16%3E"] expected: @@ -672,16 +672,19 @@ expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="u32"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec2%3Cabstract-float%3E"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec2%3Cabstract-int%3E"] expected: @@ -695,26 +698,31 @@ expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec2%3Cf32%3E"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec2%3Ci32%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec2%3Cu32%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec3%3Cabstract-float%3E"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec3%3Cabstract-int%3E"] expected: @@ -728,33 +736,39 @@ expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec3%3Cf32%3E"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec3%3Ci32%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec3%3Cu32%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec4%3Cabstract-float%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec4%3Cabstract-int%3E"] expected: if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac" and not debug: FAIL [:textureType="texture_storage_2d_array";valueType="vec4%3Cbool%3E"] expected: @@ -764,21 +778,25 @@ expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec4%3Cf32%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec4%3Ci32%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_2d_array";valueType="vec4%3Cu32%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_3d";valueType="abstract-float"] expected: @@ -796,11 +814,13 @@ expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_3d";valueType="f16"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_3d";valueType="f32"] @@ -828,19 +848,21 @@ expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_3d";valueType="vec2%3Cabstract-int%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_3d";valueType="vec2%3Cbool%3E"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_3d";valueType="vec2%3Cf16%3E"] expected: @@ -885,6 +907,7 @@ expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:textureType="texture_storage_3d";valueType="vec3%3Cbool%3E"] @@ -936,8 +959,7 @@ expected: if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "win" and not debug: FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:textureType="texture_storage_3d";valueType="vec4%3Cbool%3E"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html.ini index ff8933754277..a53f574af007 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/precedence/cts.https.html.ini @@ -328,7 +328,8 @@ [:op1="gt";op2="add"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:op1="gt";op2="bin_and"] @@ -352,7 +353,8 @@ [:op1="gt";op2="div"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:op1="gt";op2="eq"] @@ -396,7 +398,8 @@ [:op1="gt";op2="mod"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:op1="gt";op2="mul"] @@ -925,8 +928,7 @@ expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:op1="sub";op2="bin_or"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html.ini index 267a7b58c1de..1cdfe4ebab3a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/address_of_and_indirection/cts.https.html.ini @@ -1,6 +1,7 @@ [cts.https.html?q=webgpu:shader,validation,expression,unary,address_of_and_indirection:basic:*] expected: - if os == "mac": TIMEOUT + if os == "mac" and debug: TIMEOUT + if os == "mac" and not debug: [OK, TIMEOUT] [:addressSpace="function";accessMode="read";storageType="bool";derefType="deref_address_of_identifier"] expected: FAIL @@ -152,7 +153,8 @@ [:addressSpace="storage";accessMode="read_write";storageType="f32";derefType="deref_pointer"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:addressSpace="storage";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"] expected: @@ -382,7 +384,8 @@ [:addressSpace="storage";compositeType="vec";storageType="f16"] expected: - if os == "mac": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:addressSpace="storage";compositeType="vec";storageType="f32"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html.ini index 708c4f4f8a0e..a09efcccde46 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/expression/unary/arithmetic_negation/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,validation,expression,unary,arithmetic_negation:invalid_types:*] + expected: + if os == "mac": SKIP [:type="array";control=false] [:type="array";control=true] @@ -41,6 +43,8 @@ [cts.https.html?q=webgpu:shader,validation,expression,unary,arithmetic_negation:scalar_vector:*] + expected: + if os == "mac": SKIP [:type="abstract-float"] [:type="abstract-int"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html.ini index e3295cf59864..24a2380faf7a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/alias_analysis/cts.https.html.ini @@ -132,11 +132,11 @@ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";aliased=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";aliased=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";aliased=false] expected: @@ -2693,6 +2693,7 @@ [cts.https.html?q=webgpu:shader,validation,functions,alias_analysis:two_atomic_pointers:*] expected: + if os == "linux" and debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:builtin_a="atomicAdd";builtin_b="atomicLoad";address_space="storage";aliased=false] @@ -2728,11 +2729,11 @@ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";aliased=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="storage";aliased=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";aliased=false] expected: @@ -2740,11 +2741,12 @@ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicLoad";address_space="workgroup";aliased=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";aliased=false] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="storage";aliased=true] expected: @@ -2752,6 +2754,7 @@ [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";aliased=false] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicCompareExchangeWeak";builtin_b="atomicStore";address_space="workgroup";aliased=true] @@ -2767,14 +2770,18 @@ [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="workgroup";aliased=true] [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";aliased=false] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="storage";aliased=true] [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";aliased=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicExchange";builtin_b="atomicStore";address_space="workgroup";aliased=true] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicLoad";builtin_b="atomicLoad";address_space="storage";aliased=false] @@ -3156,29 +3163,32 @@ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="storage";index=1;aliased=true] [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true] expected: @@ -3186,13 +3196,11 @@ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=true] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=false] expected: @@ -3200,7 +3208,8 @@ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="workgroup";index=1;aliased=true] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:builtin_a="atomicMin";builtin_b="atomicStore";address_space="storage";index=0;aliased=false] expected: @@ -3294,35 +3303,32 @@ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";index=1;aliased=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="storage";index=1;aliased=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";index=1;aliased=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false] @@ -3391,14 +3397,12 @@ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";index=0;aliased=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";index=0;aliased=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";index=1;aliased=false] @@ -3409,8 +3413,7 @@ [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="storage";index=1;aliased=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicXor";builtin_b="atomicLoad";address_space="workgroup";index=0;aliased=false] @@ -3445,7 +3448,8 @@ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";index=0;aliased=true] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";index=1;aliased=false] @@ -3462,7 +3466,7 @@ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";index=0;aliased=false] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -3638,7 +3642,11 @@ expected: [TIMEOUT, NOTRUN] [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicExchange";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false] expected: [TIMEOUT, NOTRUN] @@ -3744,7 +3752,7 @@ [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMax";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true] @@ -3754,7 +3762,7 @@ [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:builtin_a="atomicMin";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false] expected: @@ -3815,12 +3823,12 @@ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false] expected: - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";member="a";aliased=true] expected: - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";member="b";aliased=false] @@ -3830,7 +3838,7 @@ [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="storage";member="b";aliased=true] expected: - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicOr";builtin_b="atomicLoad";address_space="workgroup";member="a";aliased=false] @@ -3875,14 +3883,12 @@ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false] @@ -3893,8 +3899,7 @@ [:builtin_a="atomicOr";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicStore";builtin_b="atomicLoad";address_space="storage";member="a";aliased=false] @@ -4011,11 +4016,14 @@ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";member="a";aliased=false] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";member="a";aliased=true] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -4023,18 +4031,20 @@ [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";member="b";aliased=false] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="storage";member="b";aliased=true] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";member="a";aliased=false] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -4045,7 +4055,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=false] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:builtin_a="atomicXor";builtin_b="atomicStore";address_space="workgroup";member="b";aliased=true] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html.ini index b930932e1bc0..7c32c6843cec 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/functions/restrictions/cts.https.html.ini @@ -39,18 +39,17 @@ [cts.https.html?q=webgpu:shader,validation,functions,restrictions:call_arg_types_match_3_params:*] expected: if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] [:p1_type="f32";p2_type="f32";p3_type="f32"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:p1_type="f32";p2_type="f32";p3_type="i32"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": FAIL [:p1_type="f32";p2_type="f32";p3_type="u32"] @@ -132,7 +131,7 @@ [:p1_type="i32";p2_type="i32";p3_type="i32"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:p1_type="i32";p2_type="i32";p3_type="u32"] expected: @@ -212,6 +211,7 @@ expected: if os == "win" and debug: TIMEOUT if os == "linux" and debug: TIMEOUT + if os == "linux" and not debug: [OK, TIMEOUT] [:decl="array1"] expected: if os == "win": FAIL @@ -3704,7 +3704,11 @@ [:decl="i32";arg="vec4u_constructor"] [:decl="mat2x2"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:decl="mat2x2";arg="abstract_float_literal"] expected: @@ -4439,7 +4443,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:decl="mat2x3"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:decl="mat2x3";arg="abstract_float_literal"] expected: @@ -5174,7 +5182,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:decl="mat2x4"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:decl="mat2x4";arg="abstract_float_literal"] expected: @@ -5909,7 +5921,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:decl="mat3x2"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:decl="mat3x2";arg="abstract_float_literal"] expected: @@ -10371,16 +10387,19 @@ expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:decl="ptr11"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:decl="ptr12"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:decl="ptr2"] expected: @@ -11512,16 +11531,19 @@ expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:decl="ptrWorkgroupAtomic"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:decl="ptrWorkgroupNestedAtomic"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] [:decl="sampler"] expected: @@ -15825,7 +15847,11 @@ if not debug: [TIMEOUT, NOTRUN] [:decl="vec4"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:decl="vec4";arg="abstract_float_literal"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/align/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/align/cts.https.html.ini index 4a47f0b55f82..4a8bea23a6c1 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/align/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/align/cts.https.html.ini @@ -198,6 +198,7 @@ [:address_space="storage";align="alignment";type={"name":"mat2x2%3Cf32%3E","storage":8,"uniform":8}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:address_space="storage";align="alignment";type={"name":"mat2x3%3Cf16%3E","storage":8,"uniform":8}] expected: @@ -759,13 +760,13 @@ [:address_space="uniform";align="alignment";type={"name":"mat2x2%3Cf16%3E","storage":4,"uniform":4}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align="alignment";type={"name":"mat2x2%3Cf32%3E","storage":8,"uniform":8}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:address_space="uniform";align="alignment";type={"name":"mat2x3%3Cf16%3E","storage":8,"uniform":8}] @@ -795,13 +796,13 @@ [:address_space="uniform";align="alignment";type={"name":"mat3x2%3Cf16%3E","storage":4,"uniform":4}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align="alignment";type={"name":"mat3x2%3Cf32%3E","storage":8,"uniform":8}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:address_space="uniform";align="alignment";type={"name":"mat3x3%3Cf16%3E","storage":8,"uniform":8}] @@ -831,13 +832,13 @@ [:address_space="uniform";align="alignment";type={"name":"mat4x2%3Cf16%3E","storage":4,"uniform":4}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align="alignment";type={"name":"mat4x2%3Cf32%3E","storage":8,"uniform":8}] expected: if os == "win" and not debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:address_space="uniform";align="alignment";type={"name":"mat4x3%3Cf16%3E","storage":8,"uniform":8}] @@ -916,6 +917,7 @@ [:address_space="uniform";align=1;type={"name":"array%3Cvec2%3Ci32%3E,%202%3E","storage":8,"uniform":16}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"array%3Cvec4%3Ci32%3E,%202%3E","storage":8,"uniform":16}] @@ -950,6 +952,7 @@ [:address_space="uniform";align=1;type={"name":"mat2x2%3Cf16%3E","storage":4,"uniform":4}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat2x2%3Cf32%3E","storage":8,"uniform":8}] @@ -961,89 +964,105 @@ [:address_space="uniform";align=1;type={"name":"mat2x3%3Cf16%3E","storage":8,"uniform":8}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat2x3%3Cf32%3E","storage":16,"uniform":16}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat2x4%3Cf16%3E","storage":8,"uniform":8}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat2x4%3Cf32%3E","storage":16,"uniform":16}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat3x2%3Cf16%3E","storage":4,"uniform":4}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat3x2%3Cf32%3E","storage":8,"uniform":8}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat3x3%3Cf16%3E","storage":8,"uniform":8}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat3x3%3Cf32%3E","storage":16,"uniform":16}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat3x4%3Cf16%3E","storage":8,"uniform":8}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat3x4%3Cf32%3E","storage":16,"uniform":16}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat4x2%3Cf16%3E","storage":4,"uniform":4}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat4x2%3Cf32%3E","storage":8,"uniform":8}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat4x3%3Cf16%3E","storage":8,"uniform":8}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat4x3%3Cf32%3E","storage":16,"uniform":16}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat4x4%3Cf16%3E","storage":8,"uniform":8}] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"mat4x4%3Cf32%3E","storage":16,"uniform":16}] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=1;type={"name":"u32","storage":4,"uniform":4}] @@ -1317,19 +1336,19 @@ [:address_space="uniform";align=32;type={"name":"atomic%3Ci32%3E","storage":4,"uniform":4}] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"f16","storage":2,"uniform":2}] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"f32","storage":4,"uniform":4}] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -1341,17 +1360,12 @@ [:address_space="uniform";align=32;type={"name":"mat2x2%3Cf16%3E","storage":4,"uniform":4}] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"mat2x2%3Cf32%3E","storage":8,"uniform":8}] - expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac": [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"mat2x3%3Cf16%3E","storage":8,"uniform":8}] expected: @@ -1383,17 +1397,12 @@ [:address_space="uniform";align=32;type={"name":"mat3x2%3Cf16%3E","storage":4,"uniform":4}] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"mat3x2%3Cf32%3E","storage":8,"uniform":8}] - expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac": [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"mat3x3%3Cf16%3E","storage":8,"uniform":8}] expected: @@ -1425,17 +1434,12 @@ [:address_space="uniform";align=32;type={"name":"mat4x2%3Cf16%3E","storage":4,"uniform":4}] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"mat4x2%3Cf32%3E","storage":8,"uniform":8}] - expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac": [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"mat4x3%3Cf16%3E","storage":8,"uniform":8}] expected: @@ -1473,40 +1477,30 @@ [:address_space="uniform";align=32;type={"name":"vec2%3Cf16%3E","storage":4,"uniform":4}] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"vec2%3Ci32%3E","storage":8,"uniform":8}] expected: - if os == "win" and not debug: [PASS, FAIL] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"vec3%3Cf16%3E","storage":8,"uniform":8}] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"vec3%3Cu32%3E","storage":16,"uniform":16}] - expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac": [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"vec4%3Cf16%3E","storage":8,"uniform":8}] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:address_space="uniform";align=32;type={"name":"vec4%3Cf32%3E","storage":16,"uniform":16}] - expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "win" and not debug: [PASS, FAIL] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac": [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html.ini index 5a88df115f22..4a6a3cdc4b0a 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/diagnostic/cts.https.html.ini @@ -331,8 +331,7 @@ expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: FAIL - if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:loc="while_stmt";s1="info";s2="off"] expected: FAIL @@ -553,7 +552,7 @@ [:loc="if_else";s1="error";s2="off"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:loc="if_else";s1="error";s2="warning"] expected: @@ -581,6 +580,7 @@ [:loc="if_else";s1="warning";s2="error"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:loc="if_else";s1="warning";s2="info"] @@ -789,7 +789,11 @@ expected: [TIMEOUT, NOTRUN] [:loc="loop_stmt";s1="off";s2="info"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:loc="loop_stmt";s1="off";s2="off"] expected: [FAIL, TIMEOUT, NOTRUN] @@ -898,11 +902,7 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:loc="switch_case";s1="error";s2="error"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:loc="switch_case";s1="error";s2="info"] expected: @@ -920,6 +920,7 @@ [:loc="switch_case";s1="error";s2="warning"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1012,8 +1013,7 @@ [:loc="switch_default";s1="error";s2="off"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:loc="switch_default";s1="error";s2="warning"] @@ -1024,24 +1024,23 @@ [:loc="switch_default";s1="info";s2="error"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:loc="switch_default";s1="info";s2="info"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:loc="switch_default";s1="info";s2="off"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:loc="switch_default";s1="info";s2="warning"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:loc="switch_default";s1="off";s2="error"] @@ -1068,25 +1067,23 @@ [:loc="switch_default";s1="warning";s2="error"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:loc="switch_default";s1="warning";s2="info"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:loc="switch_default";s1="warning";s2="off"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:loc="switch_default";s1="warning";s2="warning"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:loc="switch_stmt";s1="error";s2="error"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/discard/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/discard/cts.https.html.ini index d334b614d34f..b212f211c9a3 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/discard/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/discard/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:shader,validation,parse,discard:placement:*] + expected: + if os == "mac": SKIP [:place="compute"] [:place="fragment"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/identifiers/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/identifiers/cts.https.html.ini index 19bb8b94d918..bb289c170699 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/identifiers/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/identifiers/cts.https.html.ini @@ -48,12 +48,12 @@ [:ident="NULL"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="Self"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="_"] @@ -76,29 +76,27 @@ [:ident="abstract"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="active"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alias"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="alignas"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alignof"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="array"] @@ -106,26 +104,22 @@ [:ident="as"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm_fragment"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="async"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="atomic"] @@ -133,26 +127,22 @@ [:ident="attribute"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="auto"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="await"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="become"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="bf16"] @@ -161,8 +151,7 @@ [:ident="binding_array"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="bitcast"] @@ -184,8 +173,7 @@ [:ident="cast"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="catch"] @@ -275,7 +263,8 @@ [:ident="consteval"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="constexpr"] @@ -303,19 +292,19 @@ [:ident="crate"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="debugger"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="decltype"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -326,7 +315,7 @@ [:ident="delete"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -357,7 +346,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:ident="do"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:ident="dynamic_cast"] expected: [TIMEOUT, NOTRUN] @@ -433,14 +426,21 @@ [:ident="foo%2Bbar"] [:ident="foo%2Fbar"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo%40bar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo%5C%5Cbar"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo,bar"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo-bar"] @@ -987,12 +987,12 @@ [:ident="NULL"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="Self"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="_"] @@ -1012,12 +1012,12 @@ [:ident="abstract"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="active"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alias"] @@ -1026,12 +1026,12 @@ [:ident="alignas"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alignof"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="array"] @@ -1039,7 +1039,7 @@ [:ident="as"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm"] @@ -1128,42 +1128,50 @@ [:ident="co_return"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="co_yield"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="coherent"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="column_major"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="common"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="compile"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="compile_fragment"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="concept"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="const"] @@ -1176,22 +1184,27 @@ [:ident="const_cast"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="consteval"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="constexpr"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="constinit"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="continue"] @@ -1206,18 +1219,20 @@ [:ident="crate"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="debugger"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="decltype"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1228,13 +1243,14 @@ [:ident="delete"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="demote"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1256,7 +1272,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:ident="do"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:ident="dynamic_cast"] expected: [TIMEOUT, NOTRUN] @@ -1330,14 +1350,20 @@ [:ident="foo%2Bbar"] [:ident="foo%2Fbar"] - - [:ident="foo%40bar"] expected: if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + [:ident="foo%40bar"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] + [:ident="foo%5C%5Cbar"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo,bar"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo-bar"] @@ -1345,7 +1371,7 @@ [:ident="foo::bar"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo__0"] expected: FAIL @@ -1727,7 +1753,7 @@ [:ident="true"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="try"] @@ -1786,7 +1812,7 @@ [:ident="var"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="varying"] @@ -1815,7 +1841,7 @@ [:ident="while"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="with"] @@ -1902,7 +1928,7 @@ expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="alignas"] expected: @@ -2105,18 +2131,21 @@ [:ident="consteval"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="constexpr"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="constinit"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -2135,21 +2164,21 @@ [:ident="crate"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="debugger"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="decltype"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -2162,7 +2191,7 @@ [:ident="delete"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -2322,6 +2351,7 @@ expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo"] @@ -2329,33 +2359,37 @@ expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%2Bbar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%2Fbar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%40bar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%5C%5Cbar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo,bar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo-bar"] expected: @@ -2369,7 +2403,7 @@ expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo__0"] @@ -3512,20 +3546,17 @@ [:ident="attribute"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="auto"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="await"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="become"] @@ -3614,17 +3645,20 @@ [:ident="compile"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="compile_fragment"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="concept"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="const"] @@ -3639,25 +3673,30 @@ [:ident="const_cast"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="consteval"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="constexpr"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="constinit"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="continue"] @@ -3667,36 +3706,38 @@ [:ident="continuing"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="crate"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="debugger"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="decltype"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="default"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and not debug: [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="delete"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -3797,6 +3838,8 @@ if os == "mac": [TIMEOUT, NOTRUN] [:ident="foo!bar"] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo"] expected: @@ -3807,14 +3850,20 @@ [:ident="foo%2Bbar"] [:ident="foo%2Fbar"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%40bar"] expected: if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%5C%5Cbar"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo,bar"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo-bar"] @@ -4373,12 +4422,12 @@ [:ident="NULL"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="Self"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="_"] @@ -4407,12 +4456,12 @@ [:ident="abstract"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="active"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alias"] @@ -4422,12 +4471,12 @@ [:ident="alignas"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alignof"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="array"] @@ -4435,22 +4484,22 @@ [:ident="as"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm_fragment"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="async"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="atomic"] @@ -4458,24 +4507,22 @@ [:ident="attribute"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="auto"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="await"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="become"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="bf16"] @@ -4484,8 +4531,7 @@ [:ident="binding_array"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="bitcast"] @@ -4506,38 +4552,32 @@ [:ident="cast"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="catch"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="class"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="co_await"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="co_return"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="co_yield"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="coherent"] @@ -4572,14 +4612,14 @@ [:ident="concept"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="const"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="const_assert"] expected: @@ -4590,30 +4630,35 @@ [:ident="const_cast"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="consteval"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="constexpr"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="constinit"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="continue"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:ident="continuing"] expected: @@ -4622,19 +4667,20 @@ [:ident="crate"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="debugger"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="decltype"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -4645,7 +4691,7 @@ [:ident="delete"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -4760,20 +4806,22 @@ [:ident="foo%2Fbar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo%40bar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%5C%5Cbar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo,bar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo-bar"] expected: @@ -5106,7 +5154,7 @@ [:ident="switch"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="target"] @@ -5177,7 +5225,7 @@ [:ident="true"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="try"] @@ -5243,7 +5291,7 @@ [:ident="var"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="varying"] @@ -5272,7 +5320,7 @@ [:ident="while"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="with"] @@ -5614,7 +5662,7 @@ [:ident="delete"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] @@ -5782,6 +5830,7 @@ [:ident="foo%2Fbar"] expected: if os == "linux" and not debug: [PASS, FAIL] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo%40bar"] expected: @@ -5795,7 +5844,7 @@ [:ident="foo,bar"] expected: if os == "linux" and not debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo-bar"] expected: @@ -6915,12 +6964,12 @@ [:ident="alignas"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alignof"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="array"] @@ -6928,12 +6977,12 @@ [:ident="as"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm_fragment"] @@ -7044,27 +7093,32 @@ [:ident="column_major"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="common"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="compile"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="compile_fragment"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="concept"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="const"] @@ -7081,21 +7135,25 @@ [:ident="const_cast"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="consteval"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="constexpr"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="constinit"] expected: + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7113,19 +7171,19 @@ [:ident="crate"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="debugger"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="decltype"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7137,13 +7195,14 @@ [:ident="delete"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="demote"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -7167,7 +7226,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:ident="do"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:ident="dynamic_cast"] expected: [TIMEOUT, NOTRUN] @@ -7251,6 +7314,7 @@ [:ident="foo%40bar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo%5C%5Cbar"] expected: @@ -7267,6 +7331,7 @@ [:ident="foo::bar"] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo__0"] expected: @@ -7862,8 +7927,7 @@ [:ident="alignof"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="array"] @@ -7871,26 +7935,22 @@ [:ident="as"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm_fragment"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="async"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="atomic"] @@ -7898,26 +7958,22 @@ [:ident="attribute"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="auto"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="await"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="become"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="bf16"] @@ -7926,8 +7982,7 @@ [:ident="binding_array"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="bitcast"] @@ -7949,50 +8004,42 @@ [:ident="cast"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="catch"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="class"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="co_await"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="co_return"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="co_yield"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="coherent"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="column_major"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="common"] @@ -8082,7 +8129,7 @@ [:ident="decltype"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -8094,13 +8141,14 @@ [:ident="delete"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="demote"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -8124,7 +8172,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:ident="do"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:ident="dynamic_cast"] expected: [TIMEOUT, NOTRUN] @@ -8200,14 +8252,20 @@ [:ident="foo%2Bbar"] [:ident="foo%2Fbar"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%40bar"] expected: if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%5C%5Cbar"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo,bar"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo-bar"] @@ -8768,12 +8826,12 @@ [:ident="abstract"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="active"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alias"] @@ -8783,12 +8841,12 @@ [:ident="alignas"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alignof"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="array"] @@ -8796,24 +8854,22 @@ [:ident="as"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm_fragment"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="async"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="atomic"] @@ -8965,7 +9021,8 @@ [:ident="constexpr"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="constinit"] @@ -8998,7 +9055,7 @@ [:ident="decltype"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -9112,6 +9169,8 @@ [:ident="foo%2Bbar"] [:ident="foo%2Fbar"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo%40bar"] expected: @@ -9120,6 +9179,8 @@ [:ident="foo%5C%5Cbar"] [:ident="foo,bar"] + expected: + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo-bar"] @@ -9658,7 +9719,7 @@ [:ident="Self"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="_"] @@ -9681,12 +9742,12 @@ [:ident="abstract"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="active"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alias"] @@ -9695,12 +9756,12 @@ [:ident="alignas"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="alignof"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="array"] @@ -9708,22 +9769,22 @@ [:ident="as"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="asm_fragment"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="async"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="atomic"] @@ -9731,17 +9792,17 @@ [:ident="attribute"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="auto"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="await"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="become"] @@ -9896,17 +9957,17 @@ [:ident="decltype"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="default"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:ident="delete"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -9932,7 +9993,8 @@ [:ident="discard"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:ident="do"] expected: @@ -9946,10 +10008,12 @@ [:ident="else"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:ident="enable"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="enum"] @@ -9985,6 +10049,7 @@ [:ident="false"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="filter"] @@ -9998,29 +10063,44 @@ [:ident="fn"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:ident="foo!bar"] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo"] expected: if os == "win" and not debug: [PASS, FAIL] [:ident="foo%23bar"] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo%2Bbar"] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo%2Fbar"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%40bar"] expected: if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo%5C%5Cbar"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo,bar"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:ident="foo-bar"] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:ident="foo.bar"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html.ini index 4279d939fc2a..3ac1803c8165 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/must_use/cts.https.html.ini @@ -222,7 +222,8 @@ [:call="dpdx";use=true] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:call="dpdxCoarse";use=false] @@ -234,18 +235,21 @@ [:call="dpdxCoarse";use=true] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:call="dpdxFine";use=false] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:call="dpdxFine";use=true] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -477,8 +481,7 @@ [:call="log";use=true] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:call="log2";use=false] expected: @@ -490,7 +493,7 @@ [:call="log2";use=true] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:call="max";use=false] expected: @@ -502,7 +505,8 @@ [:call="max";use=true] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:call="min";use=false] expected: @@ -514,7 +518,8 @@ [:call="min";use=true] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and not debug: [TIMEOUT, NOTRUN] [:call="mix";use=false] expected: @@ -798,8 +803,7 @@ [:call="tan";use=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:call="tanh";use=false] @@ -811,8 +815,7 @@ [:call="tanh";use=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:call="textureDimensions";use=false] @@ -1013,7 +1016,8 @@ [:call="trunc";use=true] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:call="u32";use=false] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/var_and_let/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/var_and_let/cts.https.html.ini index 3e9395ba32b6..0edbc23e11a5 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/var_and_let/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/parse/var_and_let/cts.https.html.ini @@ -1,9 +1,9 @@ [cts.https.html?q=webgpu:shader,validation,parse,var_and_let:initializer_type:*] expected: - if os == "linux" and debug: TIMEOUT + if os == "linux" and debug: [OK, TIMEOUT] [:variableOrConstant="let"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:variableOrConstant="var"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/builtins/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/builtins/cts.https.html.ini index efdce0c70f31..92590e422f55 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/builtins/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/builtins/cts.https.html.ini @@ -198,34 +198,42 @@ expected: TIMEOUT [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="";target_io="in"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="";target_io="out"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="compute";target_io="in"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="compute";target_io="out"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="fragment";target_io="in"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="fragment";target_io="out"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="vertex";target_io="in"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="vertex";target_io="out"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="";target_io="in"] @@ -234,7 +242,8 @@ [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="";target_io="out"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="compute";target_io="in"] expected: @@ -310,11 +319,13 @@ [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="in"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="out"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -346,6 +357,7 @@ [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="in"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -477,10 +489,12 @@ [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="in"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="out"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="in"] @@ -571,7 +585,7 @@ [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="compute";target_io="in"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="compute";target_io="out"] @@ -581,12 +595,12 @@ [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="in"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="out"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="in"] @@ -596,7 +610,7 @@ [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="in"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group_and_binding/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group_and_binding/cts.https.html.ini index 43635c3ba680..26131009b370 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group_and_binding/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/group_and_binding/cts.https.html.ini @@ -323,125 +323,147 @@ if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="sampler_comparison"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="storage"] expected: [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_1d"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_2d"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_2d_array"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_3d"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_cube"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_cube_array"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_depth_2d"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_depth_2d_array"] expected: - if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_depth_cube"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_depth_cube_array"] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_depth_multisampled_2d"] expected: if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_external"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_multisampled_2d"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_storage_1d"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_storage_2d"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_storage_2d_array"] expected: + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="texture_storage_3d"] expected: + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=false;has_binding=true;resource="uniform"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="sampler"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="sampler_comparison"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="storage"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="texture_1d"] @@ -476,32 +498,37 @@ [:stage="fragment";has_group=true;has_binding=false;resource="texture_depth_2d"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="texture_depth_2d_array"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="texture_depth_cube"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="texture_depth_cube_array"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="texture_depth_multisampled_2d"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="texture_external"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -512,28 +539,32 @@ [:stage="fragment";has_group=true;has_binding=false;resource="texture_storage_1d"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="texture_storage_2d"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="texture_storage_2d_array"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="texture_storage_3d"] expected: + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=false;resource="uniform"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";has_group=true;has_binding=true;resource="sampler"] @@ -645,7 +676,7 @@ [:stage="vertex";has_group=false;has_binding=false;resource="sampler"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:stage="vertex";has_group=false;has_binding=false;resource="sampler_comparison"] expected: @@ -666,6 +697,8 @@ [:stage="vertex";has_group=false;has_binding=false;resource="texture_cube"] [:stage="vertex";has_group=false;has_binding=false;resource="texture_cube_array"] + expected: + if os == "win" and not debug: [PASS, FAIL] [:stage="vertex";has_group=false;has_binding=false;resource="texture_depth_2d"] @@ -677,11 +710,11 @@ [:stage="vertex";has_group=false;has_binding=false;resource="texture_depth_cube_array"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:stage="vertex";has_group=false;has_binding=false;resource="texture_depth_multisampled_2d"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:stage="vertex";has_group=false;has_binding=false;resource="texture_external"] @@ -1153,11 +1186,13 @@ [:a_stage="fragment";b_stage="compute";a_kind="uniform";b_kind="texture_3d";usage="transitive"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:a_stage="fragment";b_stage="compute";a_kind="uniform";b_kind="texture_storage_1d";usage="direct"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1325,7 +1360,7 @@ [:a_stage="fragment";b_stage="vertex";a_kind="storage";b_kind="uniform";usage="transitive"] expected: - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:a_stage="fragment";b_stage="vertex";a_kind="texture_2d";b_kind="texture_3d";usage="direct"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/interpolate/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/interpolate/cts.https.html.ini index 8ac5217e6fbf..fffeb14bd998 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/interpolate/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/interpolate/cts.https.html.ini @@ -102,7 +102,8 @@ [:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(perspective,%20centroid)"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:stage="fragment";type="i32";use_struct=true;attribute="%40interpolate(perspective,%20sample)"] expected: @@ -138,7 +139,7 @@ [:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(linear,%20sample)"] expected: - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="u32";use_struct=false;attribute="%40interpolate(perspective)"] @@ -228,18 +229,18 @@ [:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(linear)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(linear,%20center)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(linear,%20centroid)"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux" and debug: [TIMEOUT, NOTRUN] if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -253,33 +254,28 @@ [:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(perspective)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(perspective,%20center)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(perspective,%20centroid)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=false;attribute="%40interpolate(perspective,%20sample)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute=""] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(flat)"] @@ -290,26 +286,22 @@ [:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(linear)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(linear,%20center)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(linear,%20centroid)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(linear,%20sample)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(perspective)"] @@ -329,8 +321,7 @@ [:stage="fragment";type="vec2%3Ci32%3E";use_struct=true;attribute="%40interpolate(perspective,%20sample)"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="fragment";type="vec4%3Cu32%3E";use_struct=false;attribute=""] @@ -628,12 +619,12 @@ [:stage="vertex";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(linear,%20centroid)"] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:stage="vertex";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(linear,%20sample)"] expected: if os == "win" and debug: [PASS, FAIL] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:stage="vertex";type="vec4%3Cu32%3E";use_struct=false;attribute="%40interpolate(perspective)"] expected: @@ -1860,6 +1851,7 @@ expected: if os == "win" and debug: [PASS, FAIL] if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:stage="vertex";io="in";use_struct=false;type="linear";sampling="sample"] expected: @@ -2469,7 +2461,8 @@ [:stage="vertex";io="out";use_struct=true;type="center";sampling="linear"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="center";sampling="perspective"] @@ -2486,19 +2479,23 @@ [:stage="vertex";io="out";use_struct=true;type="centroid";sampling=""] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="centroid";sampling="center"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="centroid";sampling="centroid"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="centroid";sampling="flat"] @@ -2547,17 +2544,17 @@ [:stage="vertex";io="out";use_struct=true;type="flat";sampling="flat"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="flat";sampling="linear"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="flat";sampling="perspective"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="flat";sampling="sample"] @@ -2570,24 +2567,25 @@ [:stage="vertex";io="out";use_struct=true;type="linear";sampling=""] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="linear";sampling="center"] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="linear";sampling="centroid"] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="linear";sampling="flat"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="linear";sampling="linear"] @@ -2599,12 +2597,13 @@ [:stage="vertex";io="out";use_struct=true;type="linear";sampling="perspective"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="linear";sampling="sample"] expected: if os == "win" and debug: [PASS, FAIL] - if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="perspective";sampling=""] @@ -2627,17 +2626,17 @@ [:stage="vertex";io="out";use_struct=true;type="perspective";sampling="flat"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="perspective";sampling="linear"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="perspective";sampling="perspective"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="perspective";sampling="sample"] @@ -2665,7 +2664,11 @@ if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="sample";sampling="flat"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:stage="vertex";io="out";use_struct=true;type="sample";sampling="linear"] expected: [TIMEOUT, NOTRUN] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/invariant/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/invariant/cts.https.html.ini index a35f83fcc5ec..e60ba1c8ed2c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/invariant/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/invariant/cts.https.html.ini @@ -1,10 +1,14 @@ [cts.https.html?q=webgpu:shader,validation,shader_io,invariant:not_valid_on_user_defined_io:*] + expected: + if os == "mac": SKIP [:use_invariant=false] [:use_invariant=true] [cts.https.html?q=webgpu:shader,validation,shader_io,invariant:parsing:*] + expected: + if os == "mac": SKIP [:attr="comment"] [:attr="duplicate"] @@ -23,6 +27,8 @@ [cts.https.html?q=webgpu:shader,validation,shader_io,invariant:valid_only_with_vertex_position_builtin:*] + expected: + if os == "mac": SKIP [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false] [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html.ini index 89ab8df57159..6c097f8e7926 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/layout_constraints/cts.https.html.ini @@ -1,5 +1,6 @@ [cts.https.html?q=webgpu:shader,validation,shader_io,layout_constraints:layout_constraints:*] expected: + if os == "linux" and debug: [OK, TIMEOUT] if os == "mac": TIMEOUT [:case="array_atomic"] @@ -43,10 +44,12 @@ [:case="array_struct_size_5"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="array_struct_size_5x2"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="array_struct_u32"] @@ -73,10 +76,7 @@ [:case="array_vec2b"] expected: - if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL [:case="array_vec2f"] @@ -86,10 +86,7 @@ [:case="array_vec3b"] expected: - if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL [:case="array_vec3f"] @@ -99,10 +96,7 @@ [:case="array_vec4b"] expected: - if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL [:case="array_vec4f"] @@ -194,7 +188,7 @@ [:case="runtime_array_mat2x2f"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="runtime_array_mat2x2h"] expected: @@ -202,7 +196,7 @@ [:case="runtime_array_mat2x4f"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="runtime_array_mat2x4h"] expected: @@ -232,10 +226,7 @@ [:case="runtime_array_vec2b"] expected: - if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL [:case="runtime_array_vec2f"] @@ -245,10 +236,7 @@ [:case="runtime_array_vec3b"] expected: - if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL [:case="runtime_array_vec3f"] @@ -258,10 +246,8 @@ [:case="runtime_array_vec4b"] expected: - if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:case="runtime_array_vec4f"] @@ -275,24 +261,28 @@ [:case="struct_array_u32"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="struct_padding"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="struct_runtime_array_u32"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="struct_size_5"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="struct_size_5_align16"] expected: if os == "win": FAIL - if os == "linux" and debug: [PASS, FAIL] + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -300,10 +290,7 @@ [:case="vec2b"] expected: - if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL [:case="vec2f"] @@ -317,10 +304,7 @@ [:case="vec3b"] expected: - if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL [:case="vec3f"] @@ -334,10 +318,7 @@ [:case="vec4b"] expected: - if os == "win": FAIL if os == "linux" and debug: [PASS, FAIL] - if os == "linux" and not debug: FAIL - if os == "mac": FAIL [:case="vec4f"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html.ini index e8ebb3fb46bb..5e59d23b8a6b 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/shader_io/locations/cts.https.html.ini @@ -156,6 +156,7 @@ [:use_struct=false;type="MyAlias"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:use_struct=false;type="MyStruct"] @@ -195,6 +196,7 @@ [:use_struct=false;type="bool"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="f16"] @@ -214,6 +216,7 @@ [:use_struct=false;type="mat2x2%3Cf32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="mat2x2f"] @@ -229,6 +232,7 @@ [:use_struct=false;type="mat2x3%3Cf32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="mat2x3f"] @@ -244,6 +248,7 @@ [:use_struct=false;type="mat2x4%3Cf32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="mat2x4f"] @@ -259,6 +264,7 @@ [:use_struct=false;type="mat3x2%3Cf32%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="mat3x2f"] @@ -372,21 +378,25 @@ [:use_struct=false;type="texture_2d%3Cf32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="texture_2d_array%3Ci32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="texture_3d%3Cf32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="texture_cube%3Cu32%3E"] expected: if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="texture_cube_array%3Ci32%3E"] @@ -466,6 +476,7 @@ [:use_struct=false;type="vec2%3Cbool%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="vec2%3Cf32%3E"] @@ -505,6 +516,7 @@ [:use_struct=false;type="vec3%3Cbool%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="vec3%3Cf32%3E"] @@ -525,6 +537,7 @@ [:use_struct=false;type="vec3f"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:use_struct=false;type="vec3h"] @@ -535,15 +548,18 @@ [:use_struct=false;type="vec3i"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:use_struct=false;type="vec3u"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:use_struct=false;type="vec4%3Cbool%3E"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:use_struct=false;type="vec4%3Cf32%3E"] @@ -564,21 +580,25 @@ [:use_struct=false;type="vec4f"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:use_struct=false;type="vec4h"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:use_struct=false;type="vec4i"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:use_struct=false;type="vec4u"] expected: if os == "win" and not debug: [PASS, FAIL] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:use_struct=true;type="MyAlias"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html.ini index 6788d8cdb379..20584d37330c 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/types/textures/cts.https.html.ini @@ -33,39 +33,47 @@ if os == "mac" and not debug: TIMEOUT [:access="read";format="astc-10x10-unorm"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:access="read";format="astc-10x10-unorm-srgb"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:access="read";format="astc-10x5-unorm"] expected: - if os == "mac" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:access="read";format="astc-10x5-unorm-srgb"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:access="read";format="astc-10x6-unorm"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:access="read";format="astc-10x6-unorm-srgb"] expected: - if os == "mac": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:access="read";format="astc-10x8-unorm"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:access="read";format="astc-10x8-unorm-srgb"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:access="read";format="astc-12x10-unorm"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:access="read";format="astc-12x10-unorm-srgb"] @@ -96,16 +104,24 @@ [:access="read";format="astc-5x5-unorm-srgb"] [:access="read";format="astc-6x5-unorm"] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:access="read";format="astc-6x5-unorm-srgb"] + expected: + if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:access="read";format="astc-6x6-unorm"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:access="read";format="astc-6x6-unorm-srgb"] + expected: + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:access="read";format="astc-8x5-unorm"] expected: - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:access="read";format="astc-8x5-unorm-srgb"] expected: @@ -1125,6 +1141,7 @@ [:access="write";format="bc1-rgba-unorm"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1164,7 +1181,11 @@ expected: [TIMEOUT, NOTRUN] [:access="write";format="bc4-r-unorm"] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:access="write";format="bc5-rg-snorm"] expected: [TIMEOUT, NOTRUN] @@ -1202,11 +1223,13 @@ [:access="write";format="depth24plus"] expected: - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:access="write";format="depth24plus-stencil8"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1218,6 +1241,7 @@ [:access="write";format="depth32float-stencil8"] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] @@ -1419,20 +1443,17 @@ [:access="write";format="rgba32float"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:access="write";format="rgba32sint"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:access="write";format="rgba32uint"] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:access="write";format="rgba8sint"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/uniformity/uniformity/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/uniformity/uniformity/cts.https.html.ini index 8d986c11afda..cef4ea2a19de 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/uniformity/uniformity/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/shader/validation/uniformity/uniformity/cts.https.html.ini @@ -10732,6 +10732,7 @@ [:case="after_loop_with_uniform_break_uniform";init="no_init"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="after_loop_with_uniform_break_uniform";init="nonuniform"] @@ -10764,22 +10765,19 @@ [:case="after_switch_all_uniform";init="no_init"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="after_switch_all_uniform";init="nonuniform"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="after_switch_all_uniform";init="uniform"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="after_switch_nonuniform";init="no_init"] @@ -10803,8 +10801,7 @@ [:case="after_switch_some_assign";init="no_init"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="after_switch_some_assign";init="nonuniform"] @@ -10839,7 +10836,8 @@ [:case="after_switch_with_break_nonuniform2";init="no_init"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -10852,7 +10850,8 @@ [:case="after_switch_with_break_nonuniform2";init="uniform"] expected: - if os == "win": FAIL + if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "win" and not debug: FAIL if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] @@ -10911,15 +10910,12 @@ [:case="for_loop_uniform_body";init="no_init"] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="for_loop_uniform_body";init="nonuniform"] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:case="for_loop_uniform_body";init="uniform"] expected: @@ -11093,15 +11089,13 @@ expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="loop_body_nonuniform_cond";init="uniform"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="loop_body_uniform";init="no_init"] @@ -11198,7 +11192,8 @@ [:case="loop_continuing_from_body_split5";init="nonuniform"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="loop_continuing_from_body_split5";init="uniform"] @@ -11224,31 +11219,37 @@ [:case="loop_in_loop_with_continue_nonuniform";init="no_init"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="loop_in_loop_with_continue_nonuniform";init="nonuniform"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="loop_in_loop_with_continue_nonuniform";init="uniform"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="loop_in_loop_with_continue_uniform";init="no_init"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="loop_in_loop_with_continue_uniform";init="nonuniform"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="loop_in_loop_with_continue_uniform";init="uniform"] expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:case="loop_unreachable_continuing";init="no_init"] @@ -11387,8 +11388,7 @@ [:case="switch_nonuniform_case";init="nonuniform"] expected: if os == "win": FAIL - if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "linux" and not debug: FAIL + if os == "linux": [FAIL, TIMEOUT, NOTRUN] if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:case="switch_nonuniform_case";init="uniform"] diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/configure/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/configure/cts.https.html.ini index ed747a658a60..ae27f82a228d 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/configure/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/configure/cts.https.html.ini @@ -199,13 +199,15 @@ [:canvasType="offscreen";format="bc1-rgba-unorm"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="bc1-rgba-unorm-srgb"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="bc2-rgba-unorm"] @@ -326,7 +328,8 @@ [:canvasType="offscreen";format="depth32float-stencil8"] expected: if os == "win": FAIL - if os == "linux": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="eac-r11snorm"] @@ -390,7 +393,11 @@ if os == "mac": [PASS, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="r16float"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="r16sint"] expected: FAIL @@ -402,22 +409,19 @@ expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="r32sint"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="r32uint"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="r8sint"] expected: FAIL @@ -438,13 +442,24 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="rg16float"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="rg16sint"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="rg16uint"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac" and debug: FAIL + if os == "mac" and not debug: [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="rg32float"] expected: @@ -498,18 +513,19 @@ expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="rgba16sint"] expected: if os == "win": FAIL if os == "linux": FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="rgba16uint"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux": FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="offscreen";format="rgba32float"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/readbackFromWebGPUCanvas/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/readbackFromWebGPUCanvas/cts.https.html.ini index 2e7b88c401af..11924221d50b 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/readbackFromWebGPUCanvas/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/canvas/readbackFromWebGPUCanvas/cts.https.html.ini @@ -1,4 +1,6 @@ [cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:drawTo2DCanvas:*] + expected: + if os == "mac": SKIP [:format="bgra8unorm";alphaMode="opaque";colorSpace="display-p3";webgpuCanvasType="offscreen";canvas2DType="offscreen"] expected: FAIL @@ -145,6 +147,8 @@ [cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:offscreenCanvas,snapshot:*] + expected: + if os == "mac": SKIP [:format="bgra8unorm";alphaMode="opaque";colorSpace="display-p3";snapshotType="convertToBlob"] expected: FAIL @@ -255,6 +259,8 @@ [cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:onscreenCanvas,snapshot:*] + expected: + if os == "mac": SKIP [:format="bgra8unorm";alphaMode="opaque";colorSpace="display-p3";snapshotType="imageBitmap"] expected: FAIL @@ -365,6 +371,8 @@ [cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:onscreenCanvas,uploadToWebGL:*] + expected: + if os == "mac": SKIP [:format="bgra8unorm";alphaMode="opaque";webgl="webgl";upload="texImage2D"] expected: FAIL @@ -439,11 +447,15 @@ [cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:transferToImageBitmap_huge_size:*] + expected: + if os == "mac": SKIP [:] expected: FAIL [cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:transferToImageBitmap_unconfigured_nonzero_size:*] + expected: + if os == "mac": SKIP [:] expected: FAIL @@ -459,6 +471,8 @@ [cts.https.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:transferToImageBitmap_zero_size:*] + expected: + if os == "mac": SKIP [:configure=false] expected: FAIL diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageBitmap/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageBitmap/cts.https.html.ini index a8842c464237..a1f1ea8578d6 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageBitmap/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageBitmap/cts.https.html.ini @@ -802,10 +802,7 @@ if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="bgra8unorm";dstPremultiplied=true] - expected: - if os == "win": [PASS, TIMEOUT, NOTRUN] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="bgra8unorm-srgb";dstPremultiplied=false] expected: @@ -854,7 +851,10 @@ [:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=true] expected: - if debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] [:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg32float";dstPremultiplied=false] expected: @@ -871,11 +871,17 @@ [:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=false] expected: - if debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] [:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=true] expected: - if debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] [:alpha="none";orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgb10a2unorm";dstPremultiplied=false] expected: @@ -2269,10 +2275,15 @@ if debug: [TIMEOUT, NOTRUN] [:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="r8unorm";dstPremultiplied=true] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=false] expected: - if debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] [:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg16float";dstPremultiplied=true] expected: @@ -2280,11 +2291,17 @@ [:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg32float";dstPremultiplied=false] expected: - if debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] [:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg32float";dstPremultiplied=true] expected: - if debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [TIMEOUT, NOTRUN] [:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rg8unorm";dstPremultiplied=false] expected: @@ -2343,10 +2360,7 @@ if os == "mac" and debug: [TIMEOUT, NOTRUN] [:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba8unorm-srgb";dstPremultiplied=false] - expected: - if os == "win": [PASS, TIMEOUT, NOTRUN] - if os == "linux": [PASS, TIMEOUT, NOTRUN] - if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] + expected: [PASS, TIMEOUT, NOTRUN] [:orientation="none";colorSpaceConversion="none";srcFlipYInCopy=true;dstFormat="rgba8unorm-srgb";dstPremultiplied=true] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageData/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageData/cts.https.html.ini index 76b865df0cdb..a47b98beadfb 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageData/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/ImageData/cts.https.html.ini @@ -104,11 +104,7 @@ expected: [FAIL, TIMEOUT, NOTRUN] [:srcDoFlipYDuringCopy=false;dstColorFormat="rg8unorm";dstPremultiplied=true] - expected: - if os == "win" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "win" and not debug: FAIL - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac": [FAIL, TIMEOUT, NOTRUN] + expected: [FAIL, TIMEOUT, NOTRUN] [:srcDoFlipYDuringCopy=false;dstColorFormat="rgb10a2unorm";dstPremultiplied=false] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/canvas/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/canvas/cts.https.html.ini index 5c4f2288d83a..354aef3b28ff 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/canvas/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/canvas/cts.https.html.ini @@ -165,27 +165,35 @@ [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win": [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true] expected: - if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true] - expected: [TIMEOUT, NOTRUN] + expected: + if os == "win" and debug: [TIMEOUT, NOTRUN] + if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [TIMEOUT, NOTRUN] + if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: @@ -218,7 +226,7 @@ [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false] @@ -244,22 +252,22 @@ [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="r8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="display-p3";dstColorSpace="srgb";dstColorFormat="rg16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false] @@ -423,44 +431,44 @@ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="bgra8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [TIMEOUT, NOTRUN] if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] @@ -531,10 +539,12 @@ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rg32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: @@ -562,101 +572,102 @@ [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgb10a2unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=false;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=false;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba16float";dstPremultiplied=true;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=false;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=false;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba32float";dstPremultiplied=true;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac": [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="display-p3";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=true;srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="bgra8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false] @@ -788,12 +799,20 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=false] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=false;srcDoFlipYDuringCopy=true] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=false] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm";dstPremultiplied=true;srcDoFlipYDuringCopy=true] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:srcColorSpace="srgb";dstColorSpace="srgb";dstColorFormat="rgba8unorm-srgb";dstPremultiplied=false;srcDoFlipYDuringCopy=false] expected: @@ -888,22 +907,22 @@ [:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:canvasType="offscreen";dstColorFormat="r8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:canvasType="offscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] @@ -947,7 +966,8 @@ [:canvasType="offscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] expected: if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] - if os == "linux": [TIMEOUT, NOTRUN] + if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] if os == "mac": [TIMEOUT, NOTRUN] [:canvasType="offscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] @@ -1043,12 +1063,13 @@ [:canvasType="onscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:canvasType="onscreen";dstColorFormat="bgra8unorm-srgb";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] expected: if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:canvasType="onscreen";dstColorFormat="r16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] expected: FAIL @@ -1083,22 +1104,46 @@ [:canvasType="onscreen";dstColorFormat="r8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] [:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] expected: @@ -1108,7 +1153,11 @@ if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg8unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] @@ -1123,8 +1172,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="onscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true] expected: @@ -1545,16 +1593,32 @@ expected: FAIL [:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg16float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] expected: @@ -1564,7 +1628,11 @@ if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg32float";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] expected: @@ -1587,10 +1655,18 @@ expected: FAIL [:canvasType="onscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rg8unorm";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";dstColorFormat="rgb10a2unorm";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] expected: @@ -3575,13 +3651,11 @@ [:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] - if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN] + if os == "linux": [PASS, TIMEOUT, NOTRUN] [:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] expected: @@ -3598,10 +3672,12 @@ if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=true] + expected: + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] expected: - if os == "linux" and debug: [TIMEOUT, NOTRUN] + if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN] [:canvasType="onscreen";contextName="webgl";dstColorFormat="r8unorm";srcPremultiplied=true;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] expected: @@ -3695,7 +3771,9 @@ [:canvasType="onscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=false;dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] expected: + if os == "win" and debug: [PASS, TIMEOUT, NOTRUN] if os == "linux": [PASS, TIMEOUT, NOTRUN] + if os == "mac" and debug: [PASS, TIMEOUT, NOTRUN] [:canvasType="onscreen";contextName="webgl";dstColorFormat="rg8unorm";srcPremultiplied=true;dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] expected: @@ -5407,8 +5485,7 @@ if os == "win": FAIL if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] if os == "linux" and not debug: FAIL - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="bgra8unorm-srgb";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] expected: @@ -5424,22 +5501,46 @@ expected: FAIL [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r16float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r32float";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="r8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] expected: FAIL @@ -5510,10 +5611,18 @@ if os == "mac": FAIL [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=false] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="opaque";srcDoFlipYDuringCopy=true] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:canvasType="onscreen";srcAndDstInSameGPUDevice=true;dstColorFormat="rg8unorm";srcAlphaMode="premultiplied";dstAlphaMode="premultiplied";srcDoFlipYDuringCopy=false] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/image/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/image/cts.https.html.ini index f0ae6e1bdead..c1ebcb679e76 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/image/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/image/cts.https.html.ini @@ -98,11 +98,7 @@ expected: [FAIL, TIMEOUT, NOTRUN] [:srcDoFlipYDuringCopy=false;dstColorFormat="rg8unorm";dstPremultiplied=true] - expected: - if os == "win": [FAIL, TIMEOUT, NOTRUN] - if os == "linux": [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and debug: [FAIL, TIMEOUT, NOTRUN] - if os == "mac" and not debug: FAIL + expected: [FAIL, TIMEOUT, NOTRUN] [:srcDoFlipYDuringCopy=false;dstColorFormat="rgb10a2unorm";dstPremultiplied=false] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/video/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/video/cts.https.html.ini index 90d3d2d28180..ba74b0e29828 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/video/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/copyToTexture/video/cts.https.html.ini @@ -315,10 +315,18 @@ if os == "mac": [FAIL, TIMEOUT, NOTRUN] [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="srgb"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"] expected: FAIL @@ -341,10 +349,18 @@ if os == "mac": FAIL [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="display-p3"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoFrame";srcDoFlipYDuringCopy=true;dstColorSpace="srgb"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:videoName="four-colors-vp9-bt601-rotate-270.mp4";sourceType="VideoElement";srcDoFlipYDuringCopy=false;dstColorSpace="display-p3"] expected: diff --git a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html.ini b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html.ini index 87f7d050ddbd..641d27018458 100644 --- a/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html.ini +++ b/testing/web-platform/mozilla/meta/webgpu/cts/webgpu/web_platform/external_texture/video/cts.https.html.ini @@ -116,10 +116,18 @@ expected: FAIL [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:videoName="four-colors-vp9-bt601-hflip.mp4";sourceType="VideoFrame";dstColorSpace="srgb"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:videoName="four-colors-vp9-bt601-rotate-180.mp4";sourceType="VideoElement";dstColorSpace="display-p3"] expected: FAIL @@ -158,13 +166,25 @@ expected: FAIL [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoElement";dstColorSpace="display-p3"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoElement";dstColorSpace="srgb"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoFrame";dstColorSpace="display-p3"] - expected: FAIL + expected: + if os == "win": FAIL + if os == "linux" and debug: [FAIL, TIMEOUT, NOTRUN] + if os == "linux" and not debug: FAIL + if os == "mac": FAIL [:videoName="four-colors-vp9-bt601-vflip.mp4";sourceType="VideoFrame";dstColorSpace="srgb"] expected: diff --git a/third_party/rust/gpu-descriptor-types/.cargo-checksum.json b/third_party/rust/gpu-descriptor-types/.cargo-checksum.json index ff289fd42a21..9a414739ec09 100644 --- a/third_party/rust/gpu-descriptor-types/.cargo-checksum.json +++ b/third_party/rust/gpu-descriptor-types/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"5e3f9842253279ef626cd67111b942c5ef8d011efb39cc00b8f3469f8b4bede9","src/device.rs":"ecb6aaefd8af7ac51eed42a01ebbe7a98f44f62ea3b8d193e11a6889d4cd01bb","src/lib.rs":"bcf06593c390a3999f300333f63ae69542613157d316b3246faf69eded07d896","src/types.rs":"65f8e4006280713668f96279ce96c2d21fc75b5fb0fe4240dc650dfe71f92b27"},"package":"363e3677e55ad168fef68cf9de3a4a310b53124c5e784c53a1d70e92d23f2126"} \ No newline at end of file +{"files":{"Cargo.toml":"54164c8c1352852cce6f2330030365868815deb9bd717b8d493071790cd72d7b","src/device.rs":"0f9957fee64c4db767a2abb2e88d34ebbf48ed6062121e081e0116e14190b4fa","src/lib.rs":"0ca3f2a281ba43466fb4d29c05b35c9059806d6114cd929b85afc0c41ea9d3ac","src/types.rs":"d38b838827edf226f6bc82e8f0718d90d6e2376d027c118a6d397260996a12bd"},"package":null} \ No newline at end of file diff --git a/third_party/rust/gpu-descriptor-types/Cargo.toml b/third_party/rust/gpu-descriptor-types/Cargo.toml index 18871bb18bbb..f63ba9b7b647 100644 --- a/third_party/rust/gpu-descriptor-types/Cargo.toml +++ b/third_party/rust/gpu-descriptor-types/Cargo.toml @@ -3,24 +3,29 @@ # When uploading crates to the registry Cargo will automatically # "normalize" Cargo.toml files for maximal compatibility # with all versions of Cargo and also rewrite `path` dependencies -# to registry (e.g., crates.io) dependencies +# to registry (e.g., crates.io) dependencies. # -# If you believe there's an error in this file please file an -# issue against the rust-lang/cargo repository. If you're -# editing this file be aware that the upstream Cargo.toml -# will likely look very different (and much more reasonable) +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. [package] edition = "2018" name = "gpu-descriptor-types" -version = "0.1.1" +version = "0.2.0" authors = ["Zakarum "] description = "Core types of gpu-descriptor crate" homepage = "https://github.com/zakarumych/gpu-descriptor" -documentation = "https://docs.rs/gpu-descriptor-types/0.1.0" -keywords = ["gpu", "vulkan", "allocation", "no-std"] +documentation = "https://docs.rs/gpu-descriptor-types" +keywords = [ + "gpu", + "vulkan", + "allocation", + "no-std", +] license = "MIT OR Apache-2.0" repository = "https://github.com/zakarumych/gpu-descriptor" + [dependencies.bitflags] -version = "1.2" +version = "2.4" default-features = false diff --git a/third_party/rust/gpu-descriptor-types/src/device.rs b/third_party/rust/gpu-descriptor-types/src/device.rs index b10511f863be..a73a58a79c88 100644 --- a/third_party/rust/gpu-descriptor-types/src/device.rs +++ b/third_party/rust/gpu-descriptor-types/src/device.rs @@ -1,53 +1,75 @@ -use crate::types::{DescriptorPoolCreateFlags, DescriptorTotalCount}; - -/// Memory exhausted error. -#[derive(Debug)] -pub enum CreatePoolError { - /// Device memory exhausted. - OutOfDeviceMemory, - - /// Host memory exhausted. - OutOfHostMemory, - - /// A descriptor pool creation has failed due to fragmentation. - Fragmentation, -} - -/// Memory exhausted error. -#[derive(Debug)] -pub enum DeviceAllocationError { - /// Device memory exhausted. - OutOfDeviceMemory, - - /// Host memory exhausted. - OutOfHostMemory, - - /// Failed to allocate memory from pool. - OutOfPoolMemory, - - /// Pool allocation failed due to fragmentation of pool's memory. - FragmentedPool, -} - -/// Abstract device that can create pools of type `P` and allocate sets `S` with layout `L`. -pub trait DescriptorDevice { - unsafe fn create_descriptor_pool( - &self, - descriptor_count: &DescriptorTotalCount, - max_sets: u32, - flags: DescriptorPoolCreateFlags, - ) -> Result; - - unsafe fn destroy_descriptor_pool(&self, pool: P); - - unsafe fn alloc_descriptor_sets<'a>( - &self, - pool: &mut P, - layouts: impl ExactSizeIterator, - sets: &mut impl Extend, - ) -> Result<(), DeviceAllocationError> - where - L: 'a; - - unsafe fn dealloc_descriptor_sets<'a>(&self, pool: &mut P, sets: impl Iterator); -} +use crate::types::{DescriptorPoolCreateFlags, DescriptorTotalCount}; + +/// Memory exhausted error. +#[derive(Debug)] +pub enum CreatePoolError { + /// Device memory exhausted. + OutOfDeviceMemory, + + /// Host memory exhausted. + OutOfHostMemory, + + /// A descriptor pool creation has failed due to fragmentation. + Fragmentation, +} + +/// Memory exhausted error. +#[derive(Debug)] +pub enum DeviceAllocationError { + /// Device memory exhausted. + OutOfDeviceMemory, + + /// Host memory exhausted. + OutOfHostMemory, + + /// Failed to allocate memory from pool. + OutOfPoolMemory, + + /// Pool allocation failed due to fragmentation of pool's memory. + FragmentedPool, +} + +/// Abstract device that can create pools of type `P` and allocate sets `S` with layout `L`. +pub trait DescriptorDevice { + /// Creates a new descriptor pool. + /// + /// # Safety + /// + /// Actually safe. + /// TODO: Remove `unsafe` with next breaking change. + unsafe fn create_descriptor_pool( + &self, + descriptor_count: &DescriptorTotalCount, + max_sets: u32, + flags: DescriptorPoolCreateFlags, + ) -> Result; + + /// Destroys descriptor pool. + /// + /// # Safety + /// + /// Pool must be created from this device. + /// All descriptor sets allocated from this pool become invalid. + unsafe fn destroy_descriptor_pool(&self, pool: P); + + /// Allocates descriptor sets. + /// + /// # Safety + /// + /// Pool must be created from this device. + unsafe fn alloc_descriptor_sets<'a>( + &self, + pool: &mut P, + layouts: impl ExactSizeIterator, + sets: &mut impl Extend, + ) -> Result<(), DeviceAllocationError> + where + L: 'a; + + /// Deallocates descriptor sets. + /// + /// # Safety + /// + /// Sets must be allocated from specified pool and not deallocated before. + unsafe fn dealloc_descriptor_sets(&self, pool: &mut P, sets: impl Iterator); +} diff --git a/third_party/rust/gpu-descriptor-types/src/lib.rs b/third_party/rust/gpu-descriptor-types/src/lib.rs index 37c0d861c693..2af448c654a9 100644 --- a/third_party/rust/gpu-descriptor-types/src/lib.rs +++ b/third_party/rust/gpu-descriptor-types/src/lib.rs @@ -1,6 +1,6 @@ -#![no_std] - -mod device; -mod types; - -pub use self::{device::*, types::*}; +#![no_std] + +mod device; +mod types; + +pub use self::{device::*, types::*}; diff --git a/third_party/rust/gpu-descriptor-types/src/types.rs b/third_party/rust/gpu-descriptor-types/src/types.rs index f65ffc74ae56..73b28dcea571 100644 --- a/third_party/rust/gpu-descriptor-types/src/types.rs +++ b/third_party/rust/gpu-descriptor-types/src/types.rs @@ -1,33 +1,53 @@ -bitflags::bitflags! { - /// Flags to augment descriptor pool creation. - /// - /// Match corresponding bits in Vulkan. - pub struct DescriptorPoolCreateFlags: u32 { - /// Allows freeing individial sets. - const FREE_DESCRIPTOR_SET = 0x1; - - /// Allows allocating sets with layout created with matching backend-specific flag. - const UPDATE_AFTER_BIND = 0x2; - } -} - -/// Number of descriptors of each type. -/// -/// For `InlineUniformBlock` this value is number of bytes instead. -#[derive(Clone, Copy, Debug, Default, PartialEq, Eq, Hash)] -pub struct DescriptorTotalCount { - pub sampler: u32, - pub combined_image_sampler: u32, - pub sampled_image: u32, - pub storage_image: u32, - pub uniform_texel_buffer: u32, - pub storage_texel_buffer: u32, - pub uniform_buffer: u32, - pub storage_buffer: u32, - pub uniform_buffer_dynamic: u32, - pub storage_buffer_dynamic: u32, - pub input_attachment: u32, - pub acceleration_structure: u32, - pub inline_uniform_block_bytes: u32, - pub inline_uniform_block_bindings: u32, -} +bitflags::bitflags! { + /// Flags to augment descriptor pool creation. + /// + /// Match corresponding bits in Vulkan. + #[derive(Clone, Copy, Debug, Eq, PartialEq, Hash)] + pub struct DescriptorPoolCreateFlags: u32 { + /// Allows freeing individual sets. + const FREE_DESCRIPTOR_SET = 0x1; + + /// Allows allocating sets with layout created with matching backend-specific flag. + const UPDATE_AFTER_BIND = 0x2; + } +} + +/// Number of descriptors of each type. +/// +/// For `InlineUniformBlock` this value is number of bytes instead. +#[derive(Clone, Copy, Debug, Default, PartialEq, Eq, Hash)] +pub struct DescriptorTotalCount { + pub sampler: u32, + pub combined_image_sampler: u32, + pub sampled_image: u32, + pub storage_image: u32, + pub uniform_texel_buffer: u32, + pub storage_texel_buffer: u32, + pub uniform_buffer: u32, + pub storage_buffer: u32, + pub uniform_buffer_dynamic: u32, + pub storage_buffer_dynamic: u32, + pub input_attachment: u32, + pub acceleration_structure: u32, + pub inline_uniform_block_bytes: u32, + pub inline_uniform_block_bindings: u32, +} + +impl DescriptorTotalCount { + pub fn total(&self) -> u32 { + self.sampler + + self.combined_image_sampler + + self.sampled_image + + self.storage_image + + self.uniform_texel_buffer + + self.storage_texel_buffer + + self.uniform_buffer + + self.storage_buffer + + self.uniform_buffer_dynamic + + self.storage_buffer_dynamic + + self.input_attachment + + self.acceleration_structure + + self.inline_uniform_block_bytes + + self.inline_uniform_block_bindings + } +} diff --git a/third_party/rust/gpu-descriptor/.cargo-checksum.json b/third_party/rust/gpu-descriptor/.cargo-checksum.json index b2cdaf5c8df6..f4fb18bc5853 100644 --- a/third_party/rust/gpu-descriptor/.cargo-checksum.json +++ b/third_party/rust/gpu-descriptor/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"dfdf8bb8e5a78a8b8feff5d924bd3757fd1299fa015802314a89883036f20c80","src/allocator.rs":"d46bee4586b88a3a5988e59b3112da379a49688d7f12bd2716cebb9fa6076a7a","src/lib.rs":"6fb74a08ad9975e561f4fca7bd391f0cbd96a7cab79b17df7d979021099b50f9"},"package":"0b0c02e1ba0bdb14e965058ca34e09c020f8e507a760df1121728e0aef68d57a"} \ No newline at end of file +{"files":{"Cargo.toml":"0bd7a40cb614fe568b076fd5edd6d6e51791b6d1e0a174ae67a16d56618357e1","src/allocator.rs":"38d173f9b6ca608dee9a7898b6e2ad7e75d199284c99291da0112e4b6e908409","src/lib.rs":"6fb74a08ad9975e561f4fca7bd391f0cbd96a7cab79b17df7d979021099b50f9"},"package":null} \ No newline at end of file diff --git a/third_party/rust/gpu-descriptor/Cargo.toml b/third_party/rust/gpu-descriptor/Cargo.toml index 1f8ff2851c17..7524894008c5 100644 --- a/third_party/rust/gpu-descriptor/Cargo.toml +++ b/third_party/rust/gpu-descriptor/Cargo.toml @@ -12,7 +12,7 @@ [package] edition = "2018" name = "gpu-descriptor" -version = "0.2.3" +version = "0.3.0" authors = ["Zakarum "] description = "Implementation agnostic descriptor allocator for Vulkan like APIs" homepage = "https://github.com/zakarumych/gpu-descriptor" @@ -27,14 +27,20 @@ license = "MIT OR Apache-2.0" repository = "https://github.com/zakarumych/gpu-descriptor" [dependencies.bitflags] -version = "1.2" +version = "2.4" default-features = false [dependencies.gpu-descriptor-types] -version = "0.1" +version = "0.2" +path = "../types" [dependencies.hashbrown] -version = "0.12" +version = "0.14" +features = [ + "ahash", + "raw", +] +default-features = false [dependencies.serde] version = "1.0" diff --git a/third_party/rust/gpu-descriptor/src/allocator.rs b/third_party/rust/gpu-descriptor/src/allocator.rs index 077a8860cea8..96fc073a48f1 100644 --- a/third_party/rust/gpu-descriptor/src/allocator.rs +++ b/third_party/rust/gpu-descriptor/src/allocator.rs @@ -13,6 +13,7 @@ use { bitflags::bitflags! { /// Flags to augment descriptor set allocation. + #[derive(Clone, Copy, Debug, Eq, PartialEq, Hash)] pub struct DescriptorSetLayoutCreateFlags: u32 { /// Specified that descriptor set must be allocated from\ /// pool with `DescriptorPoolCreateFlags::UPDATE_AFTER_BIND`. @@ -107,7 +108,7 @@ struct DescriptorPool

{ struct DescriptorBucket

{ offset: u64, pools: VecDeque>, - total: u64, + total: u32, update_after_bind: bool, size: DescriptorTotalCount, } @@ -158,7 +159,7 @@ impl

DescriptorBucket

{ fn new_pool_size(&self, minimal_set_count: u32) -> (DescriptorTotalCount, u32) { let mut max_sets = MIN_SETS // at least MIN_SETS .max(minimal_set_count) // at least enough for allocation - .max(self.total.min(MAX_SETS as u64) as u32) // at least as much as was allocated so far capped to MAX_SETS + .max(self.total.min(MAX_SETS)) // at least as much as was allocated so far capped to MAX_SETS .checked_next_power_of_two() // rounded up to nearest 2^N .unwrap_or(i32::MAX as u32); @@ -259,7 +260,7 @@ impl

DescriptorBucket

{ count -= allocate; pool.available -= allocate; pool.allocated += allocate; - self.total += u64::from(allocate); + self.total += allocate; if count == 0 { return Ok(()); @@ -328,7 +329,7 @@ impl

DescriptorBucket

{ allocated: allocate, available: max_sets - allocate, }); - self.total += allocate as u64; + self.total += allocate; } Ok(()) @@ -356,7 +357,7 @@ impl

DescriptorBucket

{ pool.available += count; pool.allocated -= count; - self.total -= u64::from(count); + self.total -= count; #[cfg(feature = "tracing")] tracing::trace!("Freed {} from descriptor bucket", count); @@ -395,10 +396,11 @@ impl

DescriptorBucket

{ #[derive(Debug)] pub struct DescriptorAllocator { buckets: HashMap<(DescriptorTotalCount, bool), DescriptorBucket

>, - total: u64, sets_cache: Vec>, raw_sets_cache: Vec, max_update_after_bind_descriptors_in_all_pools: u32, + current_update_after_bind_descriptors_in_all_pools: u32, + total: u32, } impl Drop for DescriptorAllocator { @@ -421,6 +423,7 @@ impl DescriptorAllocator { sets_cache: Vec::new(), raw_sets_cache: Vec::new(), max_update_after_bind_descriptors_in_all_pools, + current_update_after_bind_descriptors_in_all_pools: 0, } } @@ -449,8 +452,18 @@ impl DescriptorAllocator { return Ok(Vec::new()); } + let descriptor_count = count * layout_descriptor_count.total(); + let update_after_bind = flags.contains(DescriptorSetLayoutCreateFlags::UPDATE_AFTER_BIND); + if update_after_bind + && self.max_update_after_bind_descriptors_in_all_pools + - self.current_update_after_bind_descriptors_in_all_pools + < descriptor_count + { + return Err(AllocationError::Fragmentation); + } + #[cfg(feature = "tracing")] tracing::trace!( "Allocating {} sets with layout {:?} @ {:?}", @@ -464,7 +477,14 @@ impl DescriptorAllocator { .entry((*layout_descriptor_count, update_after_bind)) .or_insert_with(|| DescriptorBucket::new(update_after_bind, *layout_descriptor_count)); match bucket.allocate(device, layout, count, &mut self.sets_cache) { - Ok(()) => Ok(core::mem::replace(&mut self.sets_cache, Vec::new())), + Ok(()) => { + self.total += descriptor_count; + if update_after_bind { + self.current_update_after_bind_descriptors_in_all_pools += descriptor_count; + } + + Ok(core::mem::take(&mut self.sets_cache)) + } Err(err) => { debug_assert!(self.raw_sets_cache.is_empty()); @@ -518,7 +538,7 @@ impl DescriptorAllocator { .get_mut(&last_key) .expect("Set must be allocated from this allocator"); - debug_assert!(u64::try_from(self.raw_sets_cache.len()) + debug_assert!(u32::try_from(self.raw_sets_cache.len()) .ok() .map_or(false, |count| count <= bucket.total)); @@ -536,7 +556,7 @@ impl DescriptorAllocator { .get_mut(&last_key) .expect("Set must be allocated from this allocator"); - debug_assert!(u64::try_from(self.raw_sets_cache.len()) + debug_assert!(u32::try_from(self.raw_sets_cache.len()) .ok() .map_or(false, |count| count <= bucket.total)); diff --git a/third_party/rust/naga/.cargo-checksum.json b/third_party/rust/naga/.cargo-checksum.json index d76760ded15e..1c8e0ee96013 100644 --- a/third_party/rust/naga/.cargo-checksum.json +++ b/third_party/rust/naga/.cargo-checksum.json @@ -1 +1 @@ -{"files":{".cargo/config.toml":"d7389d2a0c08ec72b79e83a3c76980903e3f9123625c32e69c798721193e2e74","CHANGELOG.md":"6b2c4d8dfd8c537811c33744703b4c03fa8aa15f5fab8f0e2be76f597cb7e273","Cargo.toml":"86da162aaf857ac8bec68d9ef773b2eca3a04be4bfa789c0385734f3ad2116df","README.md":"468211bb7457683510ff862f31f27e3ba07514f851a4390570d0e9259cbeaf6f","benches/criterion.rs":"f45e38b26e1323e934d32623572ff5395a53fed06f760eb1e07b22ed07858a38","src/arena.rs":"2b9cc6eafa2083171b9b053f309c4506796784f8770e8b62d9cfb322cdffef2a","src/back/dot/mod.rs":"d004e0bb6e5291d32e346ce5c2834774f668dd6f2def7009b6bc55bbcdca3f55","src/back/glsl/features.rs":"3d12147d201aaed746a94741356458a435a1ff7cf30b66baf44ba0b8dfe4b0ca","src/back/glsl/keywords.rs":"1546facbaddf696602102f32e47db7afc875f8ca3fbccc2122e0bcc45e022b53","src/back/glsl/mod.rs":"b9b9d590deecf9451d00ec9e9b9bcff1e4fae8462f6952efc84171c5c6af71f7","src/back/hlsl/conv.rs":"2d7a8e7753b8fb21659e582612eea82e42e353abd23df719de450074a4da731e","src/back/hlsl/help.rs":"06da97ea0d58e2b94823ca1dae67a8611be6d5d047649b1d83755acb4c110808","src/back/hlsl/keywords.rs":"a7164690a4da866e6bfb18ced20e32cc8c42dd7387e0e84addf0c2674f529cf5","src/back/hlsl/mod.rs":"22ab1201d525b4906f6c2153f0d8334c7beb8524d9d0ebe2d03ef3b0c0b59729","src/back/hlsl/storage.rs":"2c2a0071cafe487a398e396dddc85bdb319b1a5d74c097d529078e247a904359","src/back/hlsl/writer.rs":"d50da22ea8ebd7b0e0609b973918f10ecd5302fcb16c3076d027665d045f5e31","src/back/mod.rs":"de0579806ca2b341a77725defd56d5e8758ec921e48344affaffc0656d67b84f","src/back/msl/keywords.rs":"e6a4ef77363f995de1f8079c0b8591497cbf9520c5d3b2d41c7e1f483e8abd24","src/back/msl/mod.rs":"df2b37cd094d82105bf669d60e63d59149c9b697a164ae9c1174413eec315441","src/back/msl/sampler.rs":"9b01d68669e12ff7123243284b85e1a9d2c4d49140bd74ca32dedc007cbf15af","src/back/msl/writer.rs":"a4ec6fc04e825cebdef5e12838604b5f916f0f8d41d021aad3bab9ae7174707e","src/back/pipeline_constants.rs":"70f393e3caad34a09e8b1ff6f2bf805fca59dea92c50f3ab99716dc1dc4af31f","src/back/spv/block.rs":"9b11f5297cd55580d035e5943ee979d62a5e4abe16d4cb6657324daa6e4a61b8","src/back/spv/helpers.rs":"bd666bf519a5d5561c2fab6ff78229739853ae6877d132911e71b57cfd656e42","src/back/spv/image.rs":"e4b982ce430e17881d6370191d849dbe6bb8f6d86f4896815eb1736e43b4e302","src/back/spv/index.rs":"54bb90176be12a9a243099343e62b8dd35dd019d237d4d7dcdb9f0da7747df09","src/back/spv/instructions.rs":"8cf6e4cffa80e46b0cbd29970bcd32ad4da53a81bd446f03fde037f7ff1605c7","src/back/spv/layout.rs":"e263de53cd2f9a03ad94b82b434ce636609bc1ed435a2d1132951663bfaa8ebd","src/back/spv/mod.rs":"cd4cf3fd731dfdce7b0d6ddd9e7bc0813020b0bc9cc67d312f3e377061686854","src/back/spv/ray.rs":"a34bf6b26d873f7270caa45841d9ef291aca8d9732ecd086b14d8856038e1e41","src/back/spv/recyclable.rs":"114db0ea12774d6514f995d07295cb9a42631ab75165fc60980c10e9b5ecb832","src/back/spv/selection.rs":"81e404abfa0a977f7c1f76ccb37a78d13ccadbda229048dad53cc67687cc39db","src/back/spv/writer.rs":"122a5a743b599c3ead85e11c42c15cb13e747d109cca48d109f39deda68a7c34","src/back/wgsl/mod.rs":"2dd12bbea9ace835850192bb68c5760953da6bac6a636073d1eca19381c0c0b6","src/back/wgsl/writer.rs":"60e727ff151f88b2bbe75940952a26ff161af92a45147f21b95a1f4c14004bc7","src/block.rs":"e447f7e041fd67052b23d1139cf0574eea93220a818af71691d960bdf026d45f","src/compact/expressions.rs":"f22c65c7ba697ff9dfa7c722bd3d22120d846bcb7289ccdbaa7fcd8bf27751f2","src/compact/functions.rs":"e10945ca13aa0bb556cd675be31c85e1ac3698293e79b8c5e1a984bbd6fda800","src/compact/handle_set_map.rs":"817c5193352d5fd6a61a5c970daba23224e14a65aea15f8f1c8679c99f834ca2","src/compact/mod.rs":"f03f1876f14c111757152de8661497593cff23a4a638e441d2201c8383698ef5","src/compact/statements.rs":"4df33ee9589300e769e75c674bdc30578e93704ec3eb2aabc7132121745b55c8","src/compact/types.rs":"18343f2ca2c123eea2531cffc1d54a7798797caccecaa1f9b8c4fd5dd6ca1a05","src/front/glsl/ast.rs":"a4615f0c52b0dc9fdb07f816b4534c1ca547c2d176008ca86d66f9e6874f227d","src/front/glsl/builtins.rs":"d35501d5b42b61c261da24436b82eafdf96371b1600d148648d90d041f736ae4","src/front/glsl/context.rs":"e82bc54d0bf7bc65b70e2caf298374eed591fd181170c2ee5a35f96b6349dff0","src/front/glsl/error.rs":"cca4a3aa9de2808952ff68c183755df5fdf6a7cb81f170ba747795176c0342fd","src/front/glsl/functions.rs":"3ff5b5ad5707146fa50c517329414cf8f63ec5cb28e481db07120e88986a78c9","src/front/glsl/lex.rs":"08736ae8beb955da5b0e6e3e0f45995a824995f7096d516a2910417e9c7afa32","src/front/glsl/mod.rs":"c6e81710ae94a52583ba6f2a80a505d6bcd6ea6552008b80b27539af48838df1","src/front/glsl/offset.rs":"9358602ca4f9ef21d5066d674dae757bf88fdf5c289c4360534354d13bd41dc0","src/front/glsl/parser.rs":"a752f2abac17e6d35c0eb406f2f1c24d2b622a55b1bececbdd13614edb686622","src/front/glsl/parser/declarations.rs":"796514c1d571b324817bf1236d4c1227a91a512c0660ce5bb1264cd900027158","src/front/glsl/parser/expressions.rs":"520cfc9402d5fbd48e52ef1d36562c6b74794c09ec33ec1ebb10aa48d129b66f","src/front/glsl/parser/functions.rs":"d7d25be7790213dd358080b52355b06e2d286c37c301fa1ad16e35bc301492c4","src/front/glsl/parser/types.rs":"aeb97e1a5fb03205cd5630c29da59d81a376ce9a83a603b62b037e63ad948e88","src/front/glsl/parser_tests.rs":"94835b7a37ba933a61d46195376d2162043d0ab0ca05a5059a3af9a869ddfcde","src/front/glsl/token.rs":"c25c489b152ee2d445ace3c2046473abe64d558b8d27fa08709110e58718b6ac","src/front/glsl/types.rs":"91c3a4e4d11b397ea647ff287e17a48baedf2f2c310e81b04618675daeb83f69","src/front/glsl/variables.rs":"dbab566eb24c2efb97d1b036e05be7f42619feab837ea01e872a7c389186e9ca","src/front/interpolator.rs":"9b6ca498d5fbd9bc1515510a04e303a00b324121d7285da3c955cfe18eb4224c","src/front/mod.rs":"77acd7fb71d004969d1ee69fc728647f03242762988786c4e15fadf8315600af","src/front/spv/convert.rs":"dccc6671e6a4a7f1139aecdf979faa3689609081af5fa2cbbd6a2e8c4128c004","src/front/spv/error.rs":"e433f9376d80e690c398a4f4fc432bef6d28020b3306db839bd7fce2078ebf01","src/front/spv/function.rs":"6254b4d600a52cf8ded6f19718d8fbcbef4b44ffe860059ce51b1a6fecc28406","src/front/spv/image.rs":"a5ac477c01894a9c9ce5ec9d6751f991622d610f5581a759fc2e72034677d9e4","src/front/spv/mod.rs":"7a30fc1f1c00e400124cf3a867817eb900d886282f37b16019d7b363d2616e17","src/front/spv/null.rs":"a8ff44e97ffe42a4773d89b88fdb3a8ef8fba58bf6645c73b7a66470234ccf10","src/front/type_gen.rs":"b4f1df23380e06c9fdad4140810ce96ab041dbb1d371a07045b4e0069aa8ba55","src/front/wgsl/error.rs":"03ebe3045c9a1b03818b5bd4e93c46ba551368c67e2fbe0d700fe8ca307b21ab","src/front/wgsl/index.rs":"c5928ac405ffbd74de60b96360f7e07a3470b39f8f76c6e0b06544b4b5f61f57","src/front/wgsl/lower/construction.rs":"92342e27f5bdeb598e178799b74aa610788549c19a49fe0ae8914916bfa3c7be","src/front/wgsl/lower/conversion.rs":"961b19bf8ddd4667c6caf854a1889f3d6477757f4125538c3e9ca7d730975dd7","src/front/wgsl/lower/mod.rs":"3d1fdeaa6f4a4805e782bc9ae20d4b1ec045e2621d5f6e5584aeaa6636c20d11","src/front/wgsl/mod.rs":"cebe3f61843cca32d6764b93b07cb369ae22d1240d81eabe25f5c42dc603fca1","src/front/wgsl/parse/ast.rs":"31d10aaf229b2e40d690d9fe50481d4f8c8edffd07356e344597a6ea2e3bd1d8","src/front/wgsl/parse/conv.rs":"9b2a06b5fd577e1881b2212e1d675d3aefe4d1fee99a17b5f7b07c36913e8186","src/front/wgsl/parse/lexer.rs":"17db87d0017f8f9a80fa151b8545f04e1b40c4e5feef6197f4a117efa03488bf","src/front/wgsl/parse/mod.rs":"26e3119adbe142bf0ad313dd53873d87f783f46379a9e33368d3f2a29274ffc5","src/front/wgsl/parse/number.rs":"dafd3d8651cfa1389cb359d76d39bd689e54f8d5025aa23e06c6edd871369efd","src/front/wgsl/tests.rs":"7a0a083a5b66af8e7d4b1a02401b27f077eb72d07181b610693f35b11f107c6c","src/front/wgsl/to_wgsl.rs":"5bd13063bcb86682185b895892219ec3763cf3f06bcbf4c2dec261d23e7f9dac","src/keywords/mod.rs":"0138f3931f8af0b0a05174549d0fd2152945b027dc3febefc1bbd676581d2e45","src/keywords/wgsl.rs":"c648ac44241ad55c8c8bad3d8f1bab973d11ddb9c380dcca369b735ed3975309","src/lib.rs":"5c0b3c40180c08a913aeca73bbdb6ca4bf35bb8d8dd5ed78465abae1873d331b","src/proc/constant_evaluator.rs":"ae86cde5ec2fb2e7b805e5c3e7e9dd57295943b05e964a476bd9ad8aac8d7129","src/proc/emitter.rs":"39ac886c651e2ad33c06a676a7e4826a0e93de0af660c01e8e4b1f7406742f88","src/proc/index.rs":"f4250f6944c2b631e8140979024e8deb86fa8d5352d8641ba954a388b2c0940e","src/proc/layouter.rs":"b3d061c87424f36981c902716f37ab7b72f2bb2d0c2d7e900c51149318ea1a0a","src/proc/mod.rs":"0a81cd1aa9e47993b22a86de205ae6ea12cd5b42ee67884ad63a1874242e73e3","src/proc/namer.rs":"7328fac41e40890c64c7ee2fa985a4395424f18b08d30f30ca2583fdabd2fd35","src/proc/terminator.rs":"13c59bf00f5b26171d971effc421091f5e00dedddd246c2daa44fe65aeda060a","src/proc/typifier.rs":"271f7f5a0eb22c0b5060d9fd2aaab759fe07bab66cfd15e7cb7812faeb8707aa","src/span.rs":"47d92ea25ce7178ad903ac4f5acd0bc40ebd90de1e470e538a2aa3063d980890","src/valid/analyzer.rs":"4b28ab0871c3198101c3ccd5354deaab951245da583c549ed55d0c8188857b4a","src/valid/compose.rs":"83e4c09c39f853cf085b83b87e48b3db571da619132960d3ec954ebdfb0a74f2","src/valid/expression.rs":"acb5890517c49a7400bd4a45ebd3ba29c38397f124af3d769dcb412add95abda","src/valid/function.rs":"beb878755dd3a0b4525e58ad729a2238edf3cc3bd14a82f5af3e7ee3696e99f5","src/valid/handles.rs":"e33f68a1e882e0221630744b1cb5a82035601cc915567740f4117b3a2c562790","src/valid/interface.rs":"71769dc5c23ed7631d23a73442dcc9f8885a8e3e7476b514734397fb0bce34dd","src/valid/mod.rs":"4df10fc751940afe1513da116d8dfb69e68b109dbef8f1f569025d5af2ada9fa","src/valid/type.rs":"828b347abe416abd84423468ffb2dde6e21a5cd865437ff7f27e4212a33e6877"},"package":null} \ No newline at end of file +{"files":{".cargo/config.toml":"d7389d2a0c08ec72b79e83a3c76980903e3f9123625c32e69c798721193e2e74","CHANGELOG.md":"6b2c4d8dfd8c537811c33744703b4c03fa8aa15f5fab8f0e2be76f597cb7e273","Cargo.toml":"b90619d7313b3d92ba93617ab7e66f193079c18728b9004245337971994f206b","README.md":"468211bb7457683510ff862f31f27e3ba07514f851a4390570d0e9259cbeaf6f","benches/criterion.rs":"f45e38b26e1323e934d32623572ff5395a53fed06f760eb1e07b22ed07858a38","src/arena.rs":"2b9cc6eafa2083171b9b053f309c4506796784f8770e8b62d9cfb322cdffef2a","src/back/dot/mod.rs":"559d7bb9abc214a2ae8448cb3718ca249c55a24cddfa368eb765ee5c0c977524","src/back/glsl/features.rs":"382f01bec9db166f14348e60fd5347c55ddb87487b2c0040301d9a6da366a86c","src/back/glsl/keywords.rs":"1546facbaddf696602102f32e47db7afc875f8ca3fbccc2122e0bcc45e022b53","src/back/glsl/mod.rs":"e621689676095d978a5d64af1dfa1fd18e02181a1c759ac957aea1408858d122","src/back/hlsl/conv.rs":"62639a33f59fecb9fee53fcf22c77ab9f1b04b4fa81396b3bd53d217a3d424d3","src/back/hlsl/help.rs":"9ee290466c4d27ee565dc7fe3dc9ec79e7aa498790fe345dcf1d09e6e80cfdcf","src/back/hlsl/keywords.rs":"a7164690a4da866e6bfb18ced20e32cc8c42dd7387e0e84addf0c2674f529cf5","src/back/hlsl/mod.rs":"09ea1c58f0c25938935747ad5a5a94dc9643038193f01269a5c4c30f19d7669a","src/back/hlsl/storage.rs":"2c2a0071cafe487a398e396dddc85bdb319b1a5d74c097d529078e247a904359","src/back/hlsl/writer.rs":"8aa5a3916f8f4c4fb69e048102681563fa2de06ff449c1802ac3535b10b4163c","src/back/mod.rs":"de0579806ca2b341a77725defd56d5e8758ec921e48344affaffc0656d67b84f","src/back/msl/keywords.rs":"e6a4ef77363f995de1f8079c0b8591497cbf9520c5d3b2d41c7e1f483e8abd24","src/back/msl/mod.rs":"1edba5f84857b0fbd3abf0eee56c7d5cf42b54bcea7e549428ff3ec2df1f70e0","src/back/msl/sampler.rs":"9b01d68669e12ff7123243284b85e1a9d2c4d49140bd74ca32dedc007cbf15af","src/back/msl/writer.rs":"205ed801d6ebde745dc1f9cab9d5eb321d784e8b7beeb771419a8546fb647269","src/back/pipeline_constants.rs":"ec27dd142908e0cb71437a458f03c2f7d46afd0ebda46d9ba7c069d136fcd234","src/back/spv/block.rs":"5229b297df23fc99897d3f387604c61268532cc6f89a61a27124ff06d6b93c62","src/back/spv/helpers.rs":"bd666bf519a5d5561c2fab6ff78229739853ae6877d132911e71b57cfd656e42","src/back/spv/image.rs":"e4b982ce430e17881d6370191d849dbe6bb8f6d86f4896815eb1736e43b4e302","src/back/spv/index.rs":"54bb90176be12a9a243099343e62b8dd35dd019d237d4d7dcdb9f0da7747df09","src/back/spv/instructions.rs":"105e38c29889b9b2be7edd7dd228246a91189a829eab7afc18ba92337401213f","src/back/spv/layout.rs":"e263de53cd2f9a03ad94b82b434ce636609bc1ed435a2d1132951663bfaa8ebd","src/back/spv/mod.rs":"15dd38122c2c1f65164a13d185f7d3588ce6f55911330e4aae6f7c22e5c78e10","src/back/spv/ray.rs":"a34bf6b26d873f7270caa45841d9ef291aca8d9732ecd086b14d8856038e1e41","src/back/spv/recyclable.rs":"114db0ea12774d6514f995d07295cb9a42631ab75165fc60980c10e9b5ecb832","src/back/spv/selection.rs":"81e404abfa0a977f7c1f76ccb37a78d13ccadbda229048dad53cc67687cc39db","src/back/spv/subgroup.rs":"cb68fb9581064ec9ef79e56a0c94c802b2f04cc5e2173a953ae9a7b2776042d5","src/back/spv/writer.rs":"ec402f53fe9a5da087917740cd0b704a0c0d1bbab6b2db6d76d5b072107f8369","src/back/wgsl/mod.rs":"2dd12bbea9ace835850192bb68c5760953da6bac6a636073d1eca19381c0c0b6","src/back/wgsl/writer.rs":"718dd8695a6630a66989b507fb0deddcceb3d229872e4eb3e605d945ac9e24fa","src/block.rs":"e447f7e041fd67052b23d1139cf0574eea93220a818af71691d960bdf026d45f","src/compact/expressions.rs":"6d876dfbaf7d6ce6e66d4ec4ef6cb783455cc85cc67b30991e975b2f52f2b843","src/compact/functions.rs":"e10945ca13aa0bb556cd675be31c85e1ac3698293e79b8c5e1a984bbd6fda800","src/compact/handle_set_map.rs":"817c5193352d5fd6a61a5c970daba23224e14a65aea15f8f1c8679c99f834ca2","src/compact/mod.rs":"f03f1876f14c111757152de8661497593cff23a4a638e441d2201c8383698ef5","src/compact/statements.rs":"4c12ab531f9aa696bd662b44e3834a6e2b151dd1859f960eba6f4c2cec3b793a","src/compact/types.rs":"18343f2ca2c123eea2531cffc1d54a7798797caccecaa1f9b8c4fd5dd6ca1a05","src/front/glsl/ast.rs":"a4615f0c52b0dc9fdb07f816b4534c1ca547c2d176008ca86d66f9e6874f227d","src/front/glsl/builtins.rs":"d35501d5b42b61c261da24436b82eafdf96371b1600d148648d90d041f736ae4","src/front/glsl/context.rs":"e82bc54d0bf7bc65b70e2caf298374eed591fd181170c2ee5a35f96b6349dff0","src/front/glsl/error.rs":"cca4a3aa9de2808952ff68c183755df5fdf6a7cb81f170ba747795176c0342fd","src/front/glsl/functions.rs":"3ff5b5ad5707146fa50c517329414cf8f63ec5cb28e481db07120e88986a78c9","src/front/glsl/lex.rs":"08736ae8beb955da5b0e6e3e0f45995a824995f7096d516a2910417e9c7afa32","src/front/glsl/mod.rs":"c6e81710ae94a52583ba6f2a80a505d6bcd6ea6552008b80b27539af48838df1","src/front/glsl/offset.rs":"9358602ca4f9ef21d5066d674dae757bf88fdf5c289c4360534354d13bd41dc0","src/front/glsl/parser.rs":"a752f2abac17e6d35c0eb406f2f1c24d2b622a55b1bececbdd13614edb686622","src/front/glsl/parser/declarations.rs":"796514c1d571b324817bf1236d4c1227a91a512c0660ce5bb1264cd900027158","src/front/glsl/parser/expressions.rs":"520cfc9402d5fbd48e52ef1d36562c6b74794c09ec33ec1ebb10aa48d129b66f","src/front/glsl/parser/functions.rs":"d7d25be7790213dd358080b52355b06e2d286c37c301fa1ad16e35bc301492c4","src/front/glsl/parser/types.rs":"aeb97e1a5fb03205cd5630c29da59d81a376ce9a83a603b62b037e63ad948e88","src/front/glsl/parser_tests.rs":"94835b7a37ba933a61d46195376d2162043d0ab0ca05a5059a3af9a869ddfcde","src/front/glsl/token.rs":"c25c489b152ee2d445ace3c2046473abe64d558b8d27fa08709110e58718b6ac","src/front/glsl/types.rs":"91c3a4e4d11b397ea647ff287e17a48baedf2f2c310e81b04618675daeb83f69","src/front/glsl/variables.rs":"dbab566eb24c2efb97d1b036e05be7f42619feab837ea01e872a7c389186e9ca","src/front/interpolator.rs":"9b6ca498d5fbd9bc1515510a04e303a00b324121d7285da3c955cfe18eb4224c","src/front/mod.rs":"77acd7fb71d004969d1ee69fc728647f03242762988786c4e15fadf8315600af","src/front/spv/convert.rs":"b52ffba12a51b2f2f3cf0098b8451daa8db61c6b8b5194ba4d7d8cd3bc521a42","src/front/spv/error.rs":"ff4a389be73f0093cb2304a9a9748a5272b2ae7cc0efeb3287c2e30bfb8bbfa2","src/front/spv/function.rs":"6254b4d600a52cf8ded6f19718d8fbcbef4b44ffe860059ce51b1a6fecc28406","src/front/spv/image.rs":"a5ac477c01894a9c9ce5ec9d6751f991622d610f5581a759fc2e72034677d9e4","src/front/spv/mod.rs":"c211f4c8dc838dbcde8240d1e606ea9b8b0a95f31f212197cf63e9f6f29b1e8c","src/front/spv/null.rs":"a8ff44e97ffe42a4773d89b88fdb3a8ef8fba58bf6645c73b7a66470234ccf10","src/front/type_gen.rs":"b4f1df23380e06c9fdad4140810ce96ab041dbb1d371a07045b4e0069aa8ba55","src/front/wgsl/error.rs":"03ebe3045c9a1b03818b5bd4e93c46ba551368c67e2fbe0d700fe8ca307b21ab","src/front/wgsl/index.rs":"c5928ac405ffbd74de60b96360f7e07a3470b39f8f76c6e0b06544b4b5f61f57","src/front/wgsl/lower/construction.rs":"92342e27f5bdeb598e178799b74aa610788549c19a49fe0ae8914916bfa3c7be","src/front/wgsl/lower/conversion.rs":"961b19bf8ddd4667c6caf854a1889f3d6477757f4125538c3e9ca7d730975dd7","src/front/wgsl/lower/mod.rs":"e1bc9d1312cbe98607aea0f79b85a944faad0b6fa46dd565c271e6d4f5be504e","src/front/wgsl/mod.rs":"cebe3f61843cca32d6764b93b07cb369ae22d1240d81eabe25f5c42dc603fca1","src/front/wgsl/parse/ast.rs":"31d10aaf229b2e40d690d9fe50481d4f8c8edffd07356e344597a6ea2e3bd1d8","src/front/wgsl/parse/conv.rs":"e9bde6f186278475f35e8808bcdc5bb760e2fd26d8df054e69f81a840b3d346e","src/front/wgsl/parse/lexer.rs":"17db87d0017f8f9a80fa151b8545f04e1b40c4e5feef6197f4a117efa03488bf","src/front/wgsl/parse/mod.rs":"26e3119adbe142bf0ad313dd53873d87f783f46379a9e33368d3f2a29274ffc5","src/front/wgsl/parse/number.rs":"dafd3d8651cfa1389cb359d76d39bd689e54f8d5025aa23e06c6edd871369efd","src/front/wgsl/tests.rs":"7a0a083a5b66af8e7d4b1a02401b27f077eb72d07181b610693f35b11f107c6c","src/front/wgsl/to_wgsl.rs":"5bd13063bcb86682185b895892219ec3763cf3f06bcbf4c2dec261d23e7f9dac","src/keywords/mod.rs":"0138f3931f8af0b0a05174549d0fd2152945b027dc3febefc1bbd676581d2e45","src/keywords/wgsl.rs":"c648ac44241ad55c8c8bad3d8f1bab973d11ddb9c380dcca369b735ed3975309","src/lib.rs":"b435109429d2c7039eaa95e84b157c72c10aefae782456d41184a99b0cd7d1e0","src/proc/constant_evaluator.rs":"06458c0edad70efa8a1a4ba8e8b704041951293ac606f05b10ef13295ec10872","src/proc/emitter.rs":"39ac886c651e2ad33c06a676a7e4826a0e93de0af660c01e8e4b1f7406742f88","src/proc/index.rs":"f4250f6944c2b631e8140979024e8deb86fa8d5352d8641ba954a388b2c0940e","src/proc/layouter.rs":"b3d061c87424f36981c902716f37ab7b72f2bb2d0c2d7e900c51149318ea1a0a","src/proc/mod.rs":"df786d2602d4a7c3e3780b066cadef9ac0f0c2cc4c28c903b8673f9ad33931cf","src/proc/namer.rs":"7328fac41e40890c64c7ee2fa985a4395424f18b08d30f30ca2583fdabd2fd35","src/proc/terminator.rs":"fef2160473fcddd670c6b5806a8ea0ecbdcc0fdf6ed793dce131ecd08cce3944","src/proc/typifier.rs":"493664b4396353470b10ae82f9a92932066a02925eb97324401aac1d19d9e97e","src/span.rs":"47d92ea25ce7178ad903ac4f5acd0bc40ebd90de1e470e538a2aa3063d980890","src/valid/analyzer.rs":"0445be36581a4c662c483ef281c393044b47f1cfea1e69759fa953a0b558a85b","src/valid/compose.rs":"83e4c09c39f853cf085b83b87e48b3db571da619132960d3ec954ebdfb0a74f2","src/valid/expression.rs":"a03804e700322bf18c8e16407747257207bf96c11958a2f3564584c609ab9d1e","src/valid/function.rs":"1dec6a302a070c3d16e91f45e07c2cf37c3af4dc138acf7411bcebdf4930a42a","src/valid/handles.rs":"dfdb1cdd54b751a930f873ebeb8f71fae8a13fe644a25a750d5c1eec27fa1a8f","src/valid/interface.rs":"a668d727178292dd0ce25d824b61a00e855a03045532fb6b9380178813c4130a","src/valid/mod.rs":"a0db031aec6fd9b5f31fc90e067b27f7b884ae4bbbfff988bf694c1261ec1b46","src/valid/type.rs":"6c192dc3517656daf330da74ad1e85bc5a1d371e0cb3f323de2bc177239f1636"},"package":null} \ No newline at end of file diff --git a/third_party/rust/naga/Cargo.toml b/third_party/rust/naga/Cargo.toml index 5cf7e40d1ee0..aa8e8ac54303 100644 --- a/third_party/rust/naga/Cargo.toml +++ b/third_party/rust/naga/Cargo.toml @@ -52,7 +52,7 @@ bitflags = "2.5" log = "0.4" num-traits = "0.2" rustc-hash = "1.1.0" -thiserror = "1.0.57" +thiserror = "1.0.59" [dependencies.arbitrary] version = "1.3" @@ -79,7 +79,7 @@ version = "0.2.1" optional = true [dependencies.serde] -version = "1.0.196" +version = "1.0.198" features = ["derive"] optional = true diff --git a/third_party/rust/naga/src/back/dot/mod.rs b/third_party/rust/naga/src/back/dot/mod.rs index d128c855ca96..9a7702b3f6a5 100644 --- a/third_party/rust/naga/src/back/dot/mod.rs +++ b/third_party/rust/naga/src/back/dot/mod.rs @@ -279,6 +279,94 @@ impl StatementGraph { crate::RayQueryFunction::Terminate => "RayQueryTerminate", } } + S::SubgroupBallot { result, predicate } => { + if let Some(predicate) = predicate { + self.dependencies.push((id, predicate, "predicate")); + } + self.emits.push((id, result)); + "SubgroupBallot" + } + S::SubgroupCollectiveOperation { + op, + collective_op, + argument, + result, + } => { + self.dependencies.push((id, argument, "arg")); + self.emits.push((id, result)); + match (collective_op, op) { + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::All) => { + "SubgroupAll" + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Any) => { + "SubgroupAny" + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Add) => { + "SubgroupAdd" + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Mul) => { + "SubgroupMul" + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Max) => { + "SubgroupMax" + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Min) => { + "SubgroupMin" + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::And) => { + "SubgroupAnd" + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Or) => { + "SubgroupOr" + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Xor) => { + "SubgroupXor" + } + ( + crate::CollectiveOperation::ExclusiveScan, + crate::SubgroupOperation::Add, + ) => "SubgroupExclusiveAdd", + ( + crate::CollectiveOperation::ExclusiveScan, + crate::SubgroupOperation::Mul, + ) => "SubgroupExclusiveMul", + ( + crate::CollectiveOperation::InclusiveScan, + crate::SubgroupOperation::Add, + ) => "SubgroupInclusiveAdd", + ( + crate::CollectiveOperation::InclusiveScan, + crate::SubgroupOperation::Mul, + ) => "SubgroupInclusiveMul", + _ => unimplemented!(), + } + } + S::SubgroupGather { + mode, + argument, + result, + } => { + match mode { + crate::GatherMode::BroadcastFirst => {} + crate::GatherMode::Broadcast(index) + | crate::GatherMode::Shuffle(index) + | crate::GatherMode::ShuffleDown(index) + | crate::GatherMode::ShuffleUp(index) + | crate::GatherMode::ShuffleXor(index) => { + self.dependencies.push((id, index, "index")) + } + } + self.dependencies.push((id, argument, "arg")); + self.emits.push((id, result)); + match mode { + crate::GatherMode::BroadcastFirst => "SubgroupBroadcastFirst", + crate::GatherMode::Broadcast(_) => "SubgroupBroadcast", + crate::GatherMode::Shuffle(_) => "SubgroupShuffle", + crate::GatherMode::ShuffleDown(_) => "SubgroupShuffleDown", + crate::GatherMode::ShuffleUp(_) => "SubgroupShuffleUp", + crate::GatherMode::ShuffleXor(_) => "SubgroupShuffleXor", + } + } }; // Set the last node to the merge node last_node = merge_id; @@ -587,6 +675,8 @@ fn write_function_expressions( let ty = if committed { "Committed" } else { "Candidate" }; (format!("rayQueryGet{}Intersection", ty).into(), 4) } + E::SubgroupBallotResult => ("SubgroupBallotResult".into(), 4), + E::SubgroupOperationResult { .. } => ("SubgroupOperationResult".into(), 4), }; // give uniform expressions an outline diff --git a/third_party/rust/naga/src/back/glsl/features.rs b/third_party/rust/naga/src/back/glsl/features.rs index 99c128c6d98f..e5a43f3e0274 100644 --- a/third_party/rust/naga/src/back/glsl/features.rs +++ b/third_party/rust/naga/src/back/glsl/features.rs @@ -50,6 +50,8 @@ bitflags::bitflags! { const INSTANCE_INDEX = 1 << 22; /// Sample specific LODs of cube / array shadow textures const TEXTURE_SHADOW_LOD = 1 << 23; + /// Subgroup operations + const SUBGROUP_OPERATIONS = 1 << 24; } } @@ -117,6 +119,7 @@ impl FeaturesManager { check_feature!(SAMPLE_VARIABLES, 400, 300); check_feature!(DYNAMIC_ARRAY_SIZE, 430, 310); check_feature!(DUAL_SOURCE_BLENDING, 330, 300 /* with extension */); + check_feature!(SUBGROUP_OPERATIONS, 430, 310); match version { Version::Embedded { is_webgl: true, .. } => check_feature!(MULTI_VIEW, 140, 300), _ => check_feature!(MULTI_VIEW, 140, 310), @@ -259,6 +262,22 @@ impl FeaturesManager { writeln!(out, "#extension GL_EXT_texture_shadow_lod : require")?; } + if self.0.contains(Features::SUBGROUP_OPERATIONS) { + // https://registry.khronos.org/OpenGL/extensions/KHR/KHR_shader_subgroup.txt + writeln!(out, "#extension GL_KHR_shader_subgroup_basic : require")?; + writeln!(out, "#extension GL_KHR_shader_subgroup_vote : require")?; + writeln!( + out, + "#extension GL_KHR_shader_subgroup_arithmetic : require" + )?; + writeln!(out, "#extension GL_KHR_shader_subgroup_ballot : require")?; + writeln!(out, "#extension GL_KHR_shader_subgroup_shuffle : require")?; + writeln!( + out, + "#extension GL_KHR_shader_subgroup_shuffle_relative : require" + )?; + } + Ok(()) } } @@ -518,6 +537,10 @@ impl<'a, W> Writer<'a, W> { } } } + Expression::SubgroupBallotResult | + Expression::SubgroupOperationResult { .. } => { + features.request(Features::SUBGROUP_OPERATIONS) + } _ => {} } } diff --git a/third_party/rust/naga/src/back/glsl/mod.rs b/third_party/rust/naga/src/back/glsl/mod.rs index 9ed7b6f1fa1f..c8c7ea557d82 100644 --- a/third_party/rust/naga/src/back/glsl/mod.rs +++ b/third_party/rust/naga/src/back/glsl/mod.rs @@ -2390,6 +2390,125 @@ impl<'a, W: Write> Writer<'a, W> { writeln!(self.out, ");")?; } Statement::RayQuery { .. } => unreachable!(), + Statement::SubgroupBallot { result, predicate } => { + write!(self.out, "{level}")?; + let res_name = format!("{}{}", back::BAKE_PREFIX, result.index()); + let res_ty = ctx.info[result].ty.inner_with(&self.module.types); + self.write_value_type(res_ty)?; + write!(self.out, " {res_name} = ")?; + self.named_expressions.insert(result, res_name); + + write!(self.out, "subgroupBallot(")?; + match predicate { + Some(predicate) => self.write_expr(predicate, ctx)?, + None => write!(self.out, "true")?, + } + writeln!(self.out, ");")?; + } + Statement::SubgroupCollectiveOperation { + op, + collective_op, + argument, + result, + } => { + write!(self.out, "{level}")?; + let res_name = format!("{}{}", back::BAKE_PREFIX, result.index()); + let res_ty = ctx.info[result].ty.inner_with(&self.module.types); + self.write_value_type(res_ty)?; + write!(self.out, " {res_name} = ")?; + self.named_expressions.insert(result, res_name); + + match (collective_op, op) { + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::All) => { + write!(self.out, "subgroupAll(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Any) => { + write!(self.out, "subgroupAny(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Add) => { + write!(self.out, "subgroupAdd(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Mul) => { + write!(self.out, "subgroupMul(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Max) => { + write!(self.out, "subgroupMax(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Min) => { + write!(self.out, "subgroupMin(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::And) => { + write!(self.out, "subgroupAnd(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Or) => { + write!(self.out, "subgroupOr(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Xor) => { + write!(self.out, "subgroupXor(")? + } + (crate::CollectiveOperation::ExclusiveScan, crate::SubgroupOperation::Add) => { + write!(self.out, "subgroupExclusiveAdd(")? + } + (crate::CollectiveOperation::ExclusiveScan, crate::SubgroupOperation::Mul) => { + write!(self.out, "subgroupExclusiveMul(")? + } + (crate::CollectiveOperation::InclusiveScan, crate::SubgroupOperation::Add) => { + write!(self.out, "subgroupInclusiveAdd(")? + } + (crate::CollectiveOperation::InclusiveScan, crate::SubgroupOperation::Mul) => { + write!(self.out, "subgroupInclusiveMul(")? + } + _ => unimplemented!(), + } + self.write_expr(argument, ctx)?; + writeln!(self.out, ");")?; + } + Statement::SubgroupGather { + mode, + argument, + result, + } => { + write!(self.out, "{level}")?; + let res_name = format!("{}{}", back::BAKE_PREFIX, result.index()); + let res_ty = ctx.info[result].ty.inner_with(&self.module.types); + self.write_value_type(res_ty)?; + write!(self.out, " {res_name} = ")?; + self.named_expressions.insert(result, res_name); + + match mode { + crate::GatherMode::BroadcastFirst => { + write!(self.out, "subgroupBroadcastFirst(")?; + } + crate::GatherMode::Broadcast(_) => { + write!(self.out, "subgroupBroadcast(")?; + } + crate::GatherMode::Shuffle(_) => { + write!(self.out, "subgroupShuffle(")?; + } + crate::GatherMode::ShuffleDown(_) => { + write!(self.out, "subgroupShuffleDown(")?; + } + crate::GatherMode::ShuffleUp(_) => { + write!(self.out, "subgroupShuffleUp(")?; + } + crate::GatherMode::ShuffleXor(_) => { + write!(self.out, "subgroupShuffleXor(")?; + } + } + self.write_expr(argument, ctx)?; + match mode { + crate::GatherMode::BroadcastFirst => {} + crate::GatherMode::Broadcast(index) + | crate::GatherMode::Shuffle(index) + | crate::GatherMode::ShuffleDown(index) + | crate::GatherMode::ShuffleUp(index) + | crate::GatherMode::ShuffleXor(index) => { + write!(self.out, ", ")?; + self.write_expr(index, ctx)?; + } + } + writeln!(self.out, ");")?; + } } Ok(()) @@ -3658,7 +3777,9 @@ impl<'a, W: Write> Writer<'a, W> { Expression::CallResult(_) | Expression::AtomicResult { .. } | Expression::RayQueryProceedResult - | Expression::WorkGroupUniformLoadResult { .. } => unreachable!(), + | Expression::WorkGroupUniformLoadResult { .. } + | Expression::SubgroupOperationResult { .. } + | Expression::SubgroupBallotResult => unreachable!(), // `ArrayLength` is written as `expr.length()` and we convert it to a uint Expression::ArrayLength(expr) => { write!(self.out, "uint(")?; @@ -4227,6 +4348,9 @@ impl<'a, W: Write> Writer<'a, W> { if flags.contains(crate::Barrier::WORK_GROUP) { writeln!(self.out, "{level}memoryBarrierShared();")?; } + if flags.contains(crate::Barrier::SUB_GROUP) { + writeln!(self.out, "{level}subgroupMemoryBarrier();")?; + } writeln!(self.out, "{level}barrier();")?; Ok(()) } @@ -4496,6 +4620,11 @@ const fn glsl_built_in(built_in: crate::BuiltIn, options: VaryingOptions) -> &'s Bi::WorkGroupId => "gl_WorkGroupID", Bi::WorkGroupSize => "gl_WorkGroupSize", Bi::NumWorkGroups => "gl_NumWorkGroups", + // subgroup + Bi::NumSubgroups => "gl_NumSubgroups", + Bi::SubgroupId => "gl_SubgroupID", + Bi::SubgroupSize => "gl_SubgroupSize", + Bi::SubgroupInvocationId => "gl_SubgroupInvocationID", } } diff --git a/third_party/rust/naga/src/back/hlsl/conv.rs b/third_party/rust/naga/src/back/hlsl/conv.rs index 2a6db35db8c1..7d15f43f6c07 100644 --- a/third_party/rust/naga/src/back/hlsl/conv.rs +++ b/third_party/rust/naga/src/back/hlsl/conv.rs @@ -179,6 +179,11 @@ impl crate::BuiltIn { // to this field will get replaced with references to `SPECIAL_CBUF_VAR` // in `Writer::write_expr`. Self::NumWorkGroups => "SV_GroupID", + // These builtins map to functions + Self::SubgroupSize + | Self::SubgroupInvocationId + | Self::NumSubgroups + | Self::SubgroupId => unreachable!(), Self::BaseInstance | Self::BaseVertex | Self::WorkGroupSize => { return Err(Error::Unimplemented(format!("builtin {self:?}"))) } diff --git a/third_party/rust/naga/src/back/hlsl/help.rs b/third_party/rust/naga/src/back/hlsl/help.rs index 4dd9ea598779..d3bb1ce7f5ef 100644 --- a/third_party/rust/naga/src/back/hlsl/help.rs +++ b/third_party/rust/naga/src/back/hlsl/help.rs @@ -70,6 +70,11 @@ pub(super) struct WrappedMath { pub(super) components: Option, } +#[derive(Clone, Copy, Debug, Hash, Eq, Ord, PartialEq, PartialOrd)] +pub(super) struct WrappedZeroValue { + pub(super) ty: Handle, +} + /// HLSL backend requires its own `ImageQuery` enum. /// /// It is used inside `WrappedImageQuery` and should be unique per ImageQuery function. @@ -359,7 +364,7 @@ impl<'a, W: Write> super::Writer<'a, W> { } /// Helper function that write wrapped function for `Expression::Compose` for structures. - pub(super) fn write_wrapped_constructor_function( + fn write_wrapped_constructor_function( &mut self, module: &crate::Module, constructor: WrappedConstructor, @@ -862,6 +867,25 @@ impl<'a, W: Write> super::Writer<'a, W> { Ok(()) } + // TODO: we could merge this with iteration in write_wrapped_compose_functions... + // + /// Helper function that writes zero value wrapped functions + pub(super) fn write_wrapped_zero_value_functions( + &mut self, + module: &crate::Module, + expressions: &crate::Arena, + ) -> BackendResult { + for (handle, _) in expressions.iter() { + if let crate::Expression::ZeroValue(ty) = expressions[handle] { + let zero_value = WrappedZeroValue { ty }; + if self.wrapped.zero_values.insert(zero_value) { + self.write_wrapped_zero_value_function(module, zero_value)?; + } + } + } + Ok(()) + } + pub(super) fn write_wrapped_math_functions( &mut self, module: &crate::Module, @@ -1006,6 +1030,7 @@ impl<'a, W: Write> super::Writer<'a, W> { ) -> BackendResult { self.write_wrapped_math_functions(module, func_ctx)?; self.write_wrapped_compose_functions(module, func_ctx.expressions)?; + self.write_wrapped_zero_value_functions(module, func_ctx.expressions)?; for (handle, _) in func_ctx.expressions.iter() { match func_ctx.expressions[handle] { @@ -1283,4 +1308,71 @@ impl<'a, W: Write> super::Writer<'a, W> { Ok(()) } + + pub(super) fn write_wrapped_zero_value_function_name( + &mut self, + module: &crate::Module, + zero_value: WrappedZeroValue, + ) -> BackendResult { + let name = crate::TypeInner::hlsl_type_id(zero_value.ty, module.to_ctx(), &self.names)?; + write!(self.out, "ZeroValue{name}")?; + Ok(()) + } + + /// Helper function that write wrapped function for `Expression::ZeroValue` + /// + /// This is necessary since we might have a member access after the zero value expression, e.g. + /// `.y` (in practice this can come up when consuming SPIRV that's been produced by glslc). + /// + /// So we can't just write `(float4)0` since `(float4)0.y` won't parse correctly. + /// + /// Parenthesizing the expression like `((float4)0).y` would work... except DXC can't handle + /// cases like: + /// + /// ```ignore + /// tests\out\hlsl\access.hlsl:183:41: error: cannot compile this l-value expression yet + /// t_1.am = (__mat4x2[2])((float4x2[2])0); + /// ^ + /// ``` + fn write_wrapped_zero_value_function( + &mut self, + module: &crate::Module, + zero_value: WrappedZeroValue, + ) -> BackendResult { + use crate::back::INDENT; + + const RETURN_VARIABLE_NAME: &str = "ret"; + + // Write function return type and name + if let crate::TypeInner::Array { base, size, .. } = module.types[zero_value.ty].inner { + write!(self.out, "typedef ")?; + self.write_type(module, zero_value.ty)?; + write!(self.out, " ret_")?; + self.write_wrapped_zero_value_function_name(module, zero_value)?; + self.write_array_size(module, base, size)?; + writeln!(self.out, ";")?; + + write!(self.out, "ret_")?; + self.write_wrapped_zero_value_function_name(module, zero_value)?; + } else { + self.write_type(module, zero_value.ty)?; + } + write!(self.out, " ")?; + self.write_wrapped_zero_value_function_name(module, zero_value)?; + + // Write function parameters (none) and start function body + writeln!(self.out, "() {{")?; + + // Write `ZeroValue` function. + write!(self.out, "{INDENT}return ")?; + self.write_default_init(module, zero_value.ty)?; + writeln!(self.out, ";")?; + + // End of function body + writeln!(self.out, "}}")?; + // Write extra new line + writeln!(self.out)?; + + Ok(()) + } } diff --git a/third_party/rust/naga/src/back/hlsl/mod.rs b/third_party/rust/naga/src/back/hlsl/mod.rs index fe9740a2f495..28edbf70e1d6 100644 --- a/third_party/rust/naga/src/back/hlsl/mod.rs +++ b/third_party/rust/naga/src/back/hlsl/mod.rs @@ -267,6 +267,7 @@ pub enum Error { #[derive(Default)] struct Wrapped { + zero_values: crate::FastHashSet, array_lengths: crate::FastHashSet, image_queries: crate::FastHashSet, constructors: crate::FastHashSet, diff --git a/third_party/rust/naga/src/back/hlsl/writer.rs b/third_party/rust/naga/src/back/hlsl/writer.rs index ccbb741c9b30..86d8f890357f 100644 --- a/third_party/rust/naga/src/back/hlsl/writer.rs +++ b/third_party/rust/naga/src/back/hlsl/writer.rs @@ -1,5 +1,8 @@ use super::{ - help::{WrappedArrayLength, WrappedConstructor, WrappedImageQuery, WrappedStructMatrixAccess}, + help::{ + WrappedArrayLength, WrappedConstructor, WrappedImageQuery, WrappedStructMatrixAccess, + WrappedZeroValue, + }, storage::StoreValue, BackendResult, Error, Options, }; @@ -77,6 +80,19 @@ enum Io { Output, } +const fn is_subgroup_builtin_binding(binding: &Option) -> bool { + let &Some(crate::Binding::BuiltIn(builtin)) = binding else { + return false; + }; + matches!( + builtin, + crate::BuiltIn::SubgroupSize + | crate::BuiltIn::SubgroupInvocationId + | crate::BuiltIn::NumSubgroups + | crate::BuiltIn::SubgroupId + ) +} + impl<'a, W: fmt::Write> super::Writer<'a, W> { pub fn new(out: W, options: &'a Options) -> Self { Self { @@ -161,6 +177,19 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { } } } + for statement in func.body.iter() { + match *statement { + crate::Statement::SubgroupCollectiveOperation { + op: _, + collective_op: crate::CollectiveOperation::InclusiveScan, + argument, + result: _, + } => { + self.need_bake_expressions.insert(argument); + } + _ => {} + } + } } pub fn write( @@ -238,6 +267,7 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { self.write_special_functions(module)?; self.write_wrapped_compose_functions(module, &module.global_expressions)?; + self.write_wrapped_zero_value_functions(module, &module.global_expressions)?; // Write all named constants let mut constants = module @@ -401,31 +431,32 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { // if they are struct, so that the `stage` argument here could be omitted. fn write_semantic( &mut self, - binding: &crate::Binding, + binding: &Option, stage: Option<(ShaderStage, Io)>, ) -> BackendResult { match *binding { - crate::Binding::BuiltIn(builtin) => { + Some(crate::Binding::BuiltIn(builtin)) if !is_subgroup_builtin_binding(binding) => { let builtin_str = builtin.to_hlsl_str()?; write!(self.out, " : {builtin_str}")?; } - crate::Binding::Location { + Some(crate::Binding::Location { second_blend_source: true, .. - } => { + }) => { write!(self.out, " : SV_Target1")?; } - crate::Binding::Location { + Some(crate::Binding::Location { location, second_blend_source: false, .. - } => { + }) => { if stage == Some((crate::ShaderStage::Fragment, Io::Output)) { write!(self.out, " : SV_Target{location}")?; } else { write!(self.out, " : {LOCATION_SEMANTIC}{location}")?; } } + _ => {} } Ok(()) @@ -446,17 +477,30 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { write!(self.out, "struct {struct_name}")?; writeln!(self.out, " {{")?; for m in members.iter() { + if is_subgroup_builtin_binding(&m.binding) { + continue; + } write!(self.out, "{}", back::INDENT)?; if let Some(ref binding) = m.binding { self.write_modifier(binding)?; } self.write_type(module, m.ty)?; write!(self.out, " {}", &m.name)?; - if let Some(ref binding) = m.binding { - self.write_semantic(binding, Some(shader_stage))?; - } + self.write_semantic(&m.binding, Some(shader_stage))?; writeln!(self.out, ";")?; } + if members.iter().any(|arg| { + matches!( + arg.binding, + Some(crate::Binding::BuiltIn(crate::BuiltIn::SubgroupId)) + ) + }) { + writeln!( + self.out, + "{}uint __local_invocation_index : SV_GroupIndex;", + back::INDENT + )?; + } writeln!(self.out, "}};")?; writeln!(self.out)?; @@ -557,8 +601,8 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { } /// Writes special interface structures for an entry point. The special structures have - /// all the fields flattened into them and sorted by binding. They are only needed for - /// VS outputs and FS inputs, so that these interfaces match. + /// all the fields flattened into them and sorted by binding. They are needed to emulate + /// subgroup built-ins and to make the interfaces between VS outputs and FS inputs match. fn write_ep_interface( &mut self, module: &Module, @@ -567,7 +611,13 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { ep_name: &str, ) -> Result { Ok(EntryPointInterface { - input: if !func.arguments.is_empty() && stage == ShaderStage::Fragment { + input: if !func.arguments.is_empty() + && (stage == ShaderStage::Fragment + || func + .arguments + .iter() + .any(|arg| is_subgroup_builtin_binding(&arg.binding))) + { Some(self.write_ep_input_struct(module, func, stage, ep_name)?) } else { None @@ -581,6 +631,38 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { }) } + fn write_ep_argument_initialization( + &mut self, + ep: &crate::EntryPoint, + ep_input: &EntryPointBinding, + fake_member: &EpStructMember, + ) -> BackendResult { + match fake_member.binding { + Some(crate::Binding::BuiltIn(crate::BuiltIn::SubgroupSize)) => { + write!(self.out, "WaveGetLaneCount()")? + } + Some(crate::Binding::BuiltIn(crate::BuiltIn::SubgroupInvocationId)) => { + write!(self.out, "WaveGetLaneIndex()")? + } + Some(crate::Binding::BuiltIn(crate::BuiltIn::NumSubgroups)) => write!( + self.out, + "({}u + WaveGetLaneCount() - 1u) / WaveGetLaneCount()", + ep.workgroup_size[0] * ep.workgroup_size[1] * ep.workgroup_size[2] + )?, + Some(crate::Binding::BuiltIn(crate::BuiltIn::SubgroupId)) => { + write!( + self.out, + "{}.__local_invocation_index / WaveGetLaneCount()", + ep_input.arg_name + )?; + } + _ => { + write!(self.out, "{}.{}", ep_input.arg_name, fake_member.name)?; + } + } + Ok(()) + } + /// Write an entry point preface that initializes the arguments as specified in IR. fn write_ep_arguments_initialization( &mut self, @@ -588,6 +670,7 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { func: &crate::Function, ep_index: u16, ) -> BackendResult { + let ep = &module.entry_points[ep_index as usize]; let ep_input = match self.entry_point_io[ep_index as usize].input.take() { Some(ep_input) => ep_input, None => return Ok(()), @@ -601,8 +684,13 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { match module.types[arg.ty].inner { TypeInner::Array { base, size, .. } => { self.write_array_size(module, base, size)?; - let fake_member = fake_iter.next().unwrap(); - writeln!(self.out, " = {}.{};", ep_input.arg_name, fake_member.name)?; + write!(self.out, " = ")?; + self.write_ep_argument_initialization( + ep, + &ep_input, + fake_iter.next().unwrap(), + )?; + writeln!(self.out, ";")?; } TypeInner::Struct { ref members, .. } => { write!(self.out, " = {{ ")?; @@ -610,14 +698,22 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { if index != 0 { write!(self.out, ", ")?; } - let fake_member = fake_iter.next().unwrap(); - write!(self.out, "{}.{}", ep_input.arg_name, fake_member.name)?; + self.write_ep_argument_initialization( + ep, + &ep_input, + fake_iter.next().unwrap(), + )?; } writeln!(self.out, " }};")?; } _ => { - let fake_member = fake_iter.next().unwrap(); - writeln!(self.out, " = {}.{};", ep_input.arg_name, fake_member.name)?; + write!(self.out, " = ")?; + self.write_ep_argument_initialization( + ep, + &ep_input, + fake_iter.next().unwrap(), + )?; + writeln!(self.out, ";")?; } } } @@ -932,9 +1028,7 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { } } - if let Some(ref binding) = member.binding { - self.write_semantic(binding, shader_stage)?; - }; + self.write_semantic(&member.binding, shader_stage)?; writeln!(self.out, ";")?; } @@ -1147,7 +1241,7 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { } back::FunctionType::EntryPoint(ep_index) => { if let Some(ref ep_input) = self.entry_point_io[ep_index as usize].input { - write!(self.out, "{} {}", ep_input.ty_name, ep_input.arg_name,)?; + write!(self.out, "{} {}", ep_input.ty_name, ep_input.arg_name)?; } else { let stage = module.entry_points[ep_index as usize].stage; for (index, arg) in func.arguments.iter().enumerate() { @@ -1164,17 +1258,16 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { self.write_array_size(module, base, size)?; } - if let Some(ref binding) = arg.binding { - self.write_semantic(binding, Some((stage, Io::Input)))?; - } + self.write_semantic(&arg.binding, Some((stage, Io::Input)))?; } - - if need_workgroup_variables_initialization { - if !func.arguments.is_empty() { - write!(self.out, ", ")?; - } - write!(self.out, "uint3 __local_invocation_id : SV_GroupThreadID")?; + } + if need_workgroup_variables_initialization { + if self.entry_point_io[ep_index as usize].input.is_some() + || !func.arguments.is_empty() + { + write!(self.out, ", ")?; } + write!(self.out, "uint3 __local_invocation_id : SV_GroupThreadID")?; } } } @@ -1184,11 +1277,7 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { // Write semantic if it present if let back::FunctionType::EntryPoint(index) = func_ctx.ty { let stage = module.entry_points[index as usize].stage; - if let Some(crate::FunctionResult { - binding: Some(ref binding), - .. - }) = func.result - { + if let Some(crate::FunctionResult { ref binding, .. }) = func.result { self.write_semantic(binding, Some((stage, Io::Output)))?; } } @@ -1988,6 +2077,129 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { writeln!(self.out, "{level}}}")? } Statement::RayQuery { .. } => unreachable!(), + Statement::SubgroupBallot { result, predicate } => { + write!(self.out, "{level}")?; + let name = format!("{}{}", back::BAKE_PREFIX, result.index()); + write!(self.out, "const uint4 {name} = ")?; + self.named_expressions.insert(result, name); + + write!(self.out, "WaveActiveBallot(")?; + match predicate { + Some(predicate) => self.write_expr(module, predicate, func_ctx)?, + None => write!(self.out, "true")?, + } + writeln!(self.out, ");")?; + } + Statement::SubgroupCollectiveOperation { + op, + collective_op, + argument, + result, + } => { + write!(self.out, "{level}")?; + write!(self.out, "const ")?; + let name = format!("{}{}", back::BAKE_PREFIX, result.index()); + match func_ctx.info[result].ty { + proc::TypeResolution::Handle(handle) => self.write_type(module, handle)?, + proc::TypeResolution::Value(ref value) => { + self.write_value_type(module, value)? + } + }; + write!(self.out, " {name} = ")?; + self.named_expressions.insert(result, name); + + match (collective_op, op) { + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::All) => { + write!(self.out, "WaveActiveAllTrue(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Any) => { + write!(self.out, "WaveActiveAnyTrue(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Add) => { + write!(self.out, "WaveActiveSum(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Mul) => { + write!(self.out, "WaveActiveProduct(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Max) => { + write!(self.out, "WaveActiveMax(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Min) => { + write!(self.out, "WaveActiveMin(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::And) => { + write!(self.out, "WaveActiveBitAnd(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Or) => { + write!(self.out, "WaveActiveBitOr(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Xor) => { + write!(self.out, "WaveActiveBitXor(")? + } + (crate::CollectiveOperation::ExclusiveScan, crate::SubgroupOperation::Add) => { + write!(self.out, "WavePrefixSum(")? + } + (crate::CollectiveOperation::ExclusiveScan, crate::SubgroupOperation::Mul) => { + write!(self.out, "WavePrefixProduct(")? + } + (crate::CollectiveOperation::InclusiveScan, crate::SubgroupOperation::Add) => { + self.write_expr(module, argument, func_ctx)?; + write!(self.out, " + WavePrefixSum(")?; + } + (crate::CollectiveOperation::InclusiveScan, crate::SubgroupOperation::Mul) => { + self.write_expr(module, argument, func_ctx)?; + write!(self.out, " * WavePrefixProduct(")?; + } + _ => unimplemented!(), + } + self.write_expr(module, argument, func_ctx)?; + writeln!(self.out, ");")?; + } + Statement::SubgroupGather { + mode, + argument, + result, + } => { + write!(self.out, "{level}")?; + write!(self.out, "const ")?; + let name = format!("{}{}", back::BAKE_PREFIX, result.index()); + match func_ctx.info[result].ty { + proc::TypeResolution::Handle(handle) => self.write_type(module, handle)?, + proc::TypeResolution::Value(ref value) => { + self.write_value_type(module, value)? + } + }; + write!(self.out, " {name} = ")?; + self.named_expressions.insert(result, name); + + if matches!(mode, crate::GatherMode::BroadcastFirst) { + write!(self.out, "WaveReadLaneFirst(")?; + self.write_expr(module, argument, func_ctx)?; + } else { + write!(self.out, "WaveReadLaneAt(")?; + self.write_expr(module, argument, func_ctx)?; + write!(self.out, ", ")?; + match mode { + crate::GatherMode::BroadcastFirst => unreachable!(), + crate::GatherMode::Broadcast(index) | crate::GatherMode::Shuffle(index) => { + self.write_expr(module, index, func_ctx)?; + } + crate::GatherMode::ShuffleDown(index) => { + write!(self.out, "WaveGetLaneIndex() + ")?; + self.write_expr(module, index, func_ctx)?; + } + crate::GatherMode::ShuffleUp(index) => { + write!(self.out, "WaveGetLaneIndex() - ")?; + self.write_expr(module, index, func_ctx)?; + } + crate::GatherMode::ShuffleXor(index) => { + write!(self.out, "WaveGetLaneIndex() ^ ")?; + self.write_expr(module, index, func_ctx)?; + } + } + } + writeln!(self.out, ");")?; + } } Ok(()) @@ -2043,7 +2255,10 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { self.write_const_expression(module, constant.init)?; } } - Expression::ZeroValue(ty) => self.write_default_init(module, ty)?, + Expression::ZeroValue(ty) => { + self.write_wrapped_zero_value_function_name(module, WrappedZeroValue { ty })?; + write!(self.out, "()")?; + } Expression::Compose { ty, ref components } => { match module.types[ty].inner { TypeInner::Struct { .. } | TypeInner::Array { .. } => { @@ -3134,7 +3349,9 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { Expression::CallResult(_) | Expression::AtomicResult { .. } | Expression::WorkGroupUniformLoadResult { .. } - | Expression::RayQueryProceedResult => {} + | Expression::RayQueryProceedResult + | Expression::SubgroupBallotResult + | Expression::SubgroupOperationResult { .. } => {} } if !closing_bracket.is_empty() { @@ -3184,7 +3401,11 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { } /// Helper function that write default zero initialization - fn write_default_init(&mut self, module: &Module, ty: Handle) -> BackendResult { + pub(super) fn write_default_init( + &mut self, + module: &Module, + ty: Handle, + ) -> BackendResult { write!(self.out, "(")?; self.write_type(module, ty)?; if let TypeInner::Array { base, size, .. } = module.types[ty].inner { @@ -3201,6 +3422,9 @@ impl<'a, W: fmt::Write> super::Writer<'a, W> { if barrier.contains(crate::Barrier::WORK_GROUP) { writeln!(self.out, "{level}GroupMemoryBarrierWithGroupSync();")?; } + if barrier.contains(crate::Barrier::SUB_GROUP) { + // Does not exist in DirectX + } Ok(()) } } diff --git a/third_party/rust/naga/src/back/msl/mod.rs b/third_party/rust/naga/src/back/msl/mod.rs index 2c7cdea6af56..8b03e20376a2 100644 --- a/third_party/rust/naga/src/back/msl/mod.rs +++ b/third_party/rust/naga/src/back/msl/mod.rs @@ -436,6 +436,11 @@ impl ResolvedBinding { Bi::WorkGroupId => "threadgroup_position_in_grid", Bi::WorkGroupSize => "dispatch_threads_per_threadgroup", Bi::NumWorkGroups => "threadgroups_per_grid", + // subgroup + Bi::NumSubgroups => "simdgroups_per_threadgroup", + Bi::SubgroupId => "simdgroup_index_in_threadgroup", + Bi::SubgroupSize => "threads_per_simdgroup", + Bi::SubgroupInvocationId => "thread_index_in_simdgroup", Bi::CullDistance | Bi::ViewIndex => { return Err(Error::UnsupportedBuiltIn(built_in)) } @@ -538,3 +543,21 @@ fn test_error_size() { use std::mem::size_of; assert_eq!(size_of::(), 32); } + +impl crate::AtomicFunction { + fn to_msl(self) -> Result<&'static str, Error> { + Ok(match self { + Self::Add => "fetch_add", + Self::Subtract => "fetch_sub", + Self::And => "fetch_and", + Self::InclusiveOr => "fetch_or", + Self::ExclusiveOr => "fetch_xor", + Self::Min => "fetch_min", + Self::Max => "fetch_max", + Self::Exchange { compare: None } => "exchange", + Self::Exchange { compare: Some(_) } => Err(Error::FeatureNotImplemented( + "atomic CompareExchange".to_string(), + ))?, + }) + } +} diff --git a/third_party/rust/naga/src/back/msl/writer.rs b/third_party/rust/naga/src/back/msl/writer.rs index 7031d0436171..e250d0b72ca9 100644 --- a/third_party/rust/naga/src/back/msl/writer.rs +++ b/third_party/rust/naga/src/back/msl/writer.rs @@ -1131,21 +1131,10 @@ impl Writer { Ok(()) } - fn put_atomic_fetch( - &mut self, - pointer: Handle, - key: &str, - value: Handle, - context: &ExpressionContext, - ) -> BackendResult { - self.put_atomic_operation(pointer, "fetch_", key, value, context) - } - fn put_atomic_operation( &mut self, pointer: Handle, - key1: &str, - key2: &str, + key: &str, value: Handle, context: &ExpressionContext, ) -> BackendResult { @@ -1163,7 +1152,7 @@ impl Writer { write!( self.out, - "{NAMESPACE}::atomic_{key1}{key2}_explicit({ATOMIC_REFERENCE}" + "{NAMESPACE}::atomic_{key}_explicit({ATOMIC_REFERENCE}" )?; self.put_access_chain(pointer, policy, context)?; write!(self.out, ", ")?; @@ -2042,6 +2031,8 @@ impl Writer { crate::Expression::CallResult(_) | crate::Expression::AtomicResult { .. } | crate::Expression::WorkGroupUniformLoadResult { .. } + | crate::Expression::SubgroupBallotResult + | crate::Expression::SubgroupOperationResult { .. } | crate::Expression::RayQueryProceedResult => { unreachable!() } @@ -2995,43 +2986,8 @@ impl Writer { let res_name = format!("{}{}", back::BAKE_PREFIX, result.index()); self.start_baking_expression(result, &context.expression, &res_name)?; self.named_expressions.insert(result, res_name); - match *fun { - crate::AtomicFunction::Add => { - self.put_atomic_fetch(pointer, "add", value, &context.expression)?; - } - crate::AtomicFunction::Subtract => { - self.put_atomic_fetch(pointer, "sub", value, &context.expression)?; - } - crate::AtomicFunction::And => { - self.put_atomic_fetch(pointer, "and", value, &context.expression)?; - } - crate::AtomicFunction::InclusiveOr => { - self.put_atomic_fetch(pointer, "or", value, &context.expression)?; - } - crate::AtomicFunction::ExclusiveOr => { - self.put_atomic_fetch(pointer, "xor", value, &context.expression)?; - } - crate::AtomicFunction::Min => { - self.put_atomic_fetch(pointer, "min", value, &context.expression)?; - } - crate::AtomicFunction::Max => { - self.put_atomic_fetch(pointer, "max", value, &context.expression)?; - } - crate::AtomicFunction::Exchange { compare: None } => { - self.put_atomic_operation( - pointer, - "exchange", - "", - value, - &context.expression, - )?; - } - crate::AtomicFunction::Exchange { .. } => { - return Err(Error::FeatureNotImplemented( - "atomic CompareExchange".to_string(), - )); - } - } + let fun_str = fun.to_msl()?; + self.put_atomic_operation(pointer, fun_str, value, &context.expression)?; // done writeln!(self.out, ";")?; } @@ -3145,6 +3101,121 @@ impl Writer { } } } + crate::Statement::SubgroupBallot { result, predicate } => { + write!(self.out, "{level}")?; + let name = self.namer.call(""); + self.start_baking_expression(result, &context.expression, &name)?; + self.named_expressions.insert(result, name); + write!(self.out, "uint4((uint64_t){NAMESPACE}::simd_ballot(")?; + if let Some(predicate) = predicate { + self.put_expression(predicate, &context.expression, true)?; + } else { + write!(self.out, "true")?; + } + writeln!(self.out, "), 0, 0, 0);")?; + } + crate::Statement::SubgroupCollectiveOperation { + op, + collective_op, + argument, + result, + } => { + write!(self.out, "{level}")?; + let name = self.namer.call(""); + self.start_baking_expression(result, &context.expression, &name)?; + self.named_expressions.insert(result, name); + match (collective_op, op) { + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::All) => { + write!(self.out, "{NAMESPACE}::simd_all(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Any) => { + write!(self.out, "{NAMESPACE}::simd_any(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Add) => { + write!(self.out, "{NAMESPACE}::simd_sum(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Mul) => { + write!(self.out, "{NAMESPACE}::simd_product(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Max) => { + write!(self.out, "{NAMESPACE}::simd_max(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Min) => { + write!(self.out, "{NAMESPACE}::simd_min(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::And) => { + write!(self.out, "{NAMESPACE}::simd_and(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Or) => { + write!(self.out, "{NAMESPACE}::simd_or(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Xor) => { + write!(self.out, "{NAMESPACE}::simd_xor(")? + } + ( + crate::CollectiveOperation::ExclusiveScan, + crate::SubgroupOperation::Add, + ) => write!(self.out, "{NAMESPACE}::simd_prefix_exclusive_sum(")?, + ( + crate::CollectiveOperation::ExclusiveScan, + crate::SubgroupOperation::Mul, + ) => write!(self.out, "{NAMESPACE}::simd_prefix_exclusive_product(")?, + ( + crate::CollectiveOperation::InclusiveScan, + crate::SubgroupOperation::Add, + ) => write!(self.out, "{NAMESPACE}::simd_prefix_inclusive_sum(")?, + ( + crate::CollectiveOperation::InclusiveScan, + crate::SubgroupOperation::Mul, + ) => write!(self.out, "{NAMESPACE}::simd_prefix_inclusive_product(")?, + _ => unimplemented!(), + } + self.put_expression(argument, &context.expression, true)?; + writeln!(self.out, ");")?; + } + crate::Statement::SubgroupGather { + mode, + argument, + result, + } => { + write!(self.out, "{level}")?; + let name = self.namer.call(""); + self.start_baking_expression(result, &context.expression, &name)?; + self.named_expressions.insert(result, name); + match mode { + crate::GatherMode::BroadcastFirst => { + write!(self.out, "{NAMESPACE}::simd_broadcast_first(")?; + } + crate::GatherMode::Broadcast(_) => { + write!(self.out, "{NAMESPACE}::simd_broadcast(")?; + } + crate::GatherMode::Shuffle(_) => { + write!(self.out, "{NAMESPACE}::simd_shuffle(")?; + } + crate::GatherMode::ShuffleDown(_) => { + write!(self.out, "{NAMESPACE}::simd_shuffle_down(")?; + } + crate::GatherMode::ShuffleUp(_) => { + write!(self.out, "{NAMESPACE}::simd_shuffle_up(")?; + } + crate::GatherMode::ShuffleXor(_) => { + write!(self.out, "{NAMESPACE}::simd_shuffle_xor(")?; + } + } + self.put_expression(argument, &context.expression, true)?; + match mode { + crate::GatherMode::BroadcastFirst => {} + crate::GatherMode::Broadcast(index) + | crate::GatherMode::Shuffle(index) + | crate::GatherMode::ShuffleDown(index) + | crate::GatherMode::ShuffleUp(index) + | crate::GatherMode::ShuffleXor(index) => { + write!(self.out, ", ")?; + self.put_expression(index, &context.expression, true)?; + } + } + writeln!(self.out, ");")?; + } } } @@ -4492,6 +4563,12 @@ impl Writer { "{level}{NAMESPACE}::threadgroup_barrier({NAMESPACE}::mem_flags::mem_threadgroup);", )?; } + if flags.contains(crate::Barrier::SUB_GROUP) { + writeln!( + self.out, + "{level}{NAMESPACE}::simdgroup_barrier({NAMESPACE}::mem_flags::mem_threadgroup);", + )?; + } Ok(()) } } @@ -4762,8 +4839,8 @@ fn test_stack_size() { } let stack_size = addresses_end - addresses_start; // check the size (in debug only) - // last observed macOS value: 19152 (CI) - if !(9000..=20000).contains(&stack_size) { + // last observed macOS value: 22256 (CI) + if !(15000..=25000).contains(&stack_size) { panic!("`put_block` stack size {stack_size} has changed!"); } } diff --git a/third_party/rust/naga/src/back/pipeline_constants.rs b/third_party/rust/naga/src/back/pipeline_constants.rs index 50a6a3d57ac5..f8a022c99a8c 100644 --- a/third_party/rust/naga/src/back/pipeline_constants.rs +++ b/third_party/rust/naga/src/back/pipeline_constants.rs @@ -522,7 +522,9 @@ fn adjust_expr(new_pos: &[Handle], expr: &mut Expression) { ty: _, comparison: _, } - | Expression::WorkGroupUniformLoadResult { ty: _ } => {} + | Expression::WorkGroupUniformLoadResult { ty: _ } + | Expression::SubgroupBallotResult + | Expression::SubgroupOperationResult { .. } => {} } } @@ -637,6 +639,41 @@ fn adjust_stmt(new_pos: &[Handle], stmt: &mut Statement) { adjust(pointer); adjust(result); } + Statement::SubgroupBallot { + ref mut result, + ref mut predicate, + } => { + if let Some(ref mut predicate) = *predicate { + adjust(predicate); + } + adjust(result); + } + Statement::SubgroupCollectiveOperation { + ref mut argument, + ref mut result, + .. + } => { + adjust(argument); + adjust(result); + } + Statement::SubgroupGather { + ref mut mode, + ref mut argument, + ref mut result, + } => { + match *mode { + crate::GatherMode::BroadcastFirst => {} + crate::GatherMode::Broadcast(ref mut index) + | crate::GatherMode::Shuffle(ref mut index) + | crate::GatherMode::ShuffleDown(ref mut index) + | crate::GatherMode::ShuffleUp(ref mut index) + | crate::GatherMode::ShuffleXor(ref mut index) => { + adjust(index); + } + } + adjust(argument); + adjust(result) + } Statement::Call { ref mut arguments, ref mut result, diff --git a/third_party/rust/naga/src/back/spv/block.rs b/third_party/rust/naga/src/back/spv/block.rs index 29116a4f8394..120d60fc4037 100644 --- a/third_party/rust/naga/src/back/spv/block.rs +++ b/third_party/rust/naga/src/back/spv/block.rs @@ -1279,7 +1279,9 @@ impl<'w> BlockContext<'w> { crate::Expression::CallResult(_) | crate::Expression::AtomicResult { .. } | crate::Expression::WorkGroupUniformLoadResult { .. } - | crate::Expression::RayQueryProceedResult => self.cached[expr_handle], + | crate::Expression::RayQueryProceedResult + | crate::Expression::SubgroupBallotResult + | crate::Expression::SubgroupOperationResult { .. } => self.cached[expr_handle], crate::Expression::As { expr, kind, @@ -2490,6 +2492,27 @@ impl<'w> BlockContext<'w> { crate::Statement::RayQuery { query, ref fun } => { self.write_ray_query_function(query, fun, &mut block); } + crate::Statement::SubgroupBallot { + result, + ref predicate, + } => { + self.write_subgroup_ballot(predicate, result, &mut block)?; + } + crate::Statement::SubgroupCollectiveOperation { + ref op, + ref collective_op, + argument, + result, + } => { + self.write_subgroup_operation(op, collective_op, argument, result, &mut block)?; + } + crate::Statement::SubgroupGather { + ref mode, + argument, + result, + } => { + self.write_subgroup_gather(mode, argument, result, &mut block)?; + } } } diff --git a/third_party/rust/naga/src/back/spv/instructions.rs b/third_party/rust/naga/src/back/spv/instructions.rs index f3acf01d6cfa..df2774ab9c2e 100644 --- a/third_party/rust/naga/src/back/spv/instructions.rs +++ b/third_party/rust/naga/src/back/spv/instructions.rs @@ -1073,6 +1073,73 @@ impl super::Instruction { instruction.add_operand(semantics_id); instruction } + + // Group Instructions + + pub(super) fn group_non_uniform_ballot( + result_type_id: Word, + id: Word, + exec_scope_id: Word, + predicate: Word, + ) -> Self { + let mut instruction = Self::new(Op::GroupNonUniformBallot); + instruction.set_type(result_type_id); + instruction.set_result(id); + instruction.add_operand(exec_scope_id); + instruction.add_operand(predicate); + + instruction + } + pub(super) fn group_non_uniform_broadcast_first( + result_type_id: Word, + id: Word, + exec_scope_id: Word, + value: Word, + ) -> Self { + let mut instruction = Self::new(Op::GroupNonUniformBroadcastFirst); + instruction.set_type(result_type_id); + instruction.set_result(id); + instruction.add_operand(exec_scope_id); + instruction.add_operand(value); + + instruction + } + pub(super) fn group_non_uniform_gather( + op: Op, + result_type_id: Word, + id: Word, + exec_scope_id: Word, + value: Word, + index: Word, + ) -> Self { + let mut instruction = Self::new(op); + instruction.set_type(result_type_id); + instruction.set_result(id); + instruction.add_operand(exec_scope_id); + instruction.add_operand(value); + instruction.add_operand(index); + + instruction + } + pub(super) fn group_non_uniform_arithmetic( + op: Op, + result_type_id: Word, + id: Word, + exec_scope_id: Word, + group_op: Option, + value: Word, + ) -> Self { + let mut instruction = Self::new(op); + instruction.set_type(result_type_id); + instruction.set_result(id); + instruction.add_operand(exec_scope_id); + if let Some(group_op) = group_op { + instruction.add_operand(group_op as u32); + } + instruction.add_operand(value); + + instruction + } } impl From for spirv::ImageFormat { diff --git a/third_party/rust/naga/src/back/spv/mod.rs b/third_party/rust/naga/src/back/spv/mod.rs index 8626bb104dda..3bc2225b01b6 100644 --- a/third_party/rust/naga/src/back/spv/mod.rs +++ b/third_party/rust/naga/src/back/spv/mod.rs @@ -13,6 +13,7 @@ mod layout; mod ray; mod recyclable; mod selection; +mod subgroup; mod writer; pub use spirv::Capability; @@ -456,7 +457,7 @@ impl recyclable::Recyclable for CachedExpressions { #[derive(Eq, Hash, PartialEq)] enum CachedConstant { - Literal(crate::Literal), + Literal(crate::proc::HashableLiteral), Composite { ty: LookupType, constituent_ids: Vec, diff --git a/third_party/rust/naga/src/back/spv/subgroup.rs b/third_party/rust/naga/src/back/spv/subgroup.rs new file mode 100644 index 000000000000..c952cb11a7bd --- /dev/null +++ b/third_party/rust/naga/src/back/spv/subgroup.rs @@ -0,0 +1,207 @@ +use super::{Block, BlockContext, Error, Instruction}; +use crate::{ + arena::Handle, + back::spv::{LocalType, LookupType}, + TypeInner, +}; + +impl<'w> BlockContext<'w> { + pub(super) fn write_subgroup_ballot( + &mut self, + predicate: &Option>, + result: Handle, + block: &mut Block, + ) -> Result<(), Error> { + self.writer.require_any( + "GroupNonUniformBallot", + &[spirv::Capability::GroupNonUniformBallot], + )?; + let vec4_u32_type_id = self.get_type_id(LookupType::Local(LocalType::Value { + vector_size: Some(crate::VectorSize::Quad), + scalar: crate::Scalar::U32, + pointer_space: None, + })); + let exec_scope_id = self.get_index_constant(spirv::Scope::Subgroup as u32); + let predicate = if let Some(predicate) = *predicate { + self.cached[predicate] + } else { + self.writer.get_constant_scalar(crate::Literal::Bool(true)) + }; + let id = self.gen_id(); + block.body.push(Instruction::group_non_uniform_ballot( + vec4_u32_type_id, + id, + exec_scope_id, + predicate, + )); + self.cached[result] = id; + Ok(()) + } + pub(super) fn write_subgroup_operation( + &mut self, + op: &crate::SubgroupOperation, + collective_op: &crate::CollectiveOperation, + argument: Handle, + result: Handle, + block: &mut Block, + ) -> Result<(), Error> { + use crate::SubgroupOperation as sg; + match *op { + sg::All | sg::Any => { + self.writer.require_any( + "GroupNonUniformVote", + &[spirv::Capability::GroupNonUniformVote], + )?; + } + _ => { + self.writer.require_any( + "GroupNonUniformArithmetic", + &[spirv::Capability::GroupNonUniformArithmetic], + )?; + } + } + + let id = self.gen_id(); + let result_ty = &self.fun_info[result].ty; + let result_type_id = self.get_expression_type_id(result_ty); + let result_ty_inner = result_ty.inner_with(&self.ir_module.types); + + let (is_scalar, scalar) = match *result_ty_inner { + TypeInner::Scalar(kind) => (true, kind), + TypeInner::Vector { scalar: kind, .. } => (false, kind), + _ => unimplemented!(), + }; + + use crate::ScalarKind as sk; + let spirv_op = match (scalar.kind, *op) { + (sk::Bool, sg::All) if is_scalar => spirv::Op::GroupNonUniformAll, + (sk::Bool, sg::Any) if is_scalar => spirv::Op::GroupNonUniformAny, + (_, sg::All | sg::Any) => unimplemented!(), + + (sk::Sint | sk::Uint, sg::Add) => spirv::Op::GroupNonUniformIAdd, + (sk::Float, sg::Add) => spirv::Op::GroupNonUniformFAdd, + (sk::Sint | sk::Uint, sg::Mul) => spirv::Op::GroupNonUniformIMul, + (sk::Float, sg::Mul) => spirv::Op::GroupNonUniformFMul, + (sk::Sint, sg::Max) => spirv::Op::GroupNonUniformSMax, + (sk::Uint, sg::Max) => spirv::Op::GroupNonUniformUMax, + (sk::Float, sg::Max) => spirv::Op::GroupNonUniformFMax, + (sk::Sint, sg::Min) => spirv::Op::GroupNonUniformSMin, + (sk::Uint, sg::Min) => spirv::Op::GroupNonUniformUMin, + (sk::Float, sg::Min) => spirv::Op::GroupNonUniformFMin, + (_, sg::Add | sg::Mul | sg::Min | sg::Max) => unimplemented!(), + + (sk::Sint | sk::Uint, sg::And) => spirv::Op::GroupNonUniformBitwiseAnd, + (sk::Sint | sk::Uint, sg::Or) => spirv::Op::GroupNonUniformBitwiseOr, + (sk::Sint | sk::Uint, sg::Xor) => spirv::Op::GroupNonUniformBitwiseXor, + (sk::Bool, sg::And) => spirv::Op::GroupNonUniformLogicalAnd, + (sk::Bool, sg::Or) => spirv::Op::GroupNonUniformLogicalOr, + (sk::Bool, sg::Xor) => spirv::Op::GroupNonUniformLogicalXor, + (_, sg::And | sg::Or | sg::Xor) => unimplemented!(), + }; + + let exec_scope_id = self.get_index_constant(spirv::Scope::Subgroup as u32); + + use crate::CollectiveOperation as c; + let group_op = match *op { + sg::All | sg::Any => None, + _ => Some(match *collective_op { + c::Reduce => spirv::GroupOperation::Reduce, + c::InclusiveScan => spirv::GroupOperation::InclusiveScan, + c::ExclusiveScan => spirv::GroupOperation::ExclusiveScan, + }), + }; + + let arg_id = self.cached[argument]; + block.body.push(Instruction::group_non_uniform_arithmetic( + spirv_op, + result_type_id, + id, + exec_scope_id, + group_op, + arg_id, + )); + self.cached[result] = id; + Ok(()) + } + pub(super) fn write_subgroup_gather( + &mut self, + mode: &crate::GatherMode, + argument: Handle, + result: Handle, + block: &mut Block, + ) -> Result<(), Error> { + self.writer.require_any( + "GroupNonUniformBallot", + &[spirv::Capability::GroupNonUniformBallot], + )?; + match *mode { + crate::GatherMode::BroadcastFirst | crate::GatherMode::Broadcast(_) => { + self.writer.require_any( + "GroupNonUniformBallot", + &[spirv::Capability::GroupNonUniformBallot], + )?; + } + crate::GatherMode::Shuffle(_) | crate::GatherMode::ShuffleXor(_) => { + self.writer.require_any( + "GroupNonUniformShuffle", + &[spirv::Capability::GroupNonUniformShuffle], + )?; + } + crate::GatherMode::ShuffleDown(_) | crate::GatherMode::ShuffleUp(_) => { + self.writer.require_any( + "GroupNonUniformShuffleRelative", + &[spirv::Capability::GroupNonUniformShuffleRelative], + )?; + } + } + + let id = self.gen_id(); + let result_ty = &self.fun_info[result].ty; + let result_type_id = self.get_expression_type_id(result_ty); + + let exec_scope_id = self.get_index_constant(spirv::Scope::Subgroup as u32); + + let arg_id = self.cached[argument]; + match *mode { + crate::GatherMode::BroadcastFirst => { + block + .body + .push(Instruction::group_non_uniform_broadcast_first( + result_type_id, + id, + exec_scope_id, + arg_id, + )); + } + crate::GatherMode::Broadcast(index) + | crate::GatherMode::Shuffle(index) + | crate::GatherMode::ShuffleDown(index) + | crate::GatherMode::ShuffleUp(index) + | crate::GatherMode::ShuffleXor(index) => { + let index_id = self.cached[index]; + let op = match *mode { + crate::GatherMode::BroadcastFirst => unreachable!(), + // Use shuffle to emit broadcast to allow the index to + // be dynamically uniform on Vulkan 1.1. The argument to + // OpGroupNonUniformBroadcast must be a constant pre SPIR-V + // 1.5 (vulkan 1.2) + crate::GatherMode::Broadcast(_) => spirv::Op::GroupNonUniformShuffle, + crate::GatherMode::Shuffle(_) => spirv::Op::GroupNonUniformShuffle, + crate::GatherMode::ShuffleDown(_) => spirv::Op::GroupNonUniformShuffleDown, + crate::GatherMode::ShuffleUp(_) => spirv::Op::GroupNonUniformShuffleUp, + crate::GatherMode::ShuffleXor(_) => spirv::Op::GroupNonUniformShuffleXor, + }; + block.body.push(Instruction::group_non_uniform_gather( + op, + result_type_id, + id, + exec_scope_id, + arg_id, + index_id, + )); + } + } + self.cached[result] = id; + Ok(()) + } +} diff --git a/third_party/rust/naga/src/back/spv/writer.rs b/third_party/rust/naga/src/back/spv/writer.rs index cf96fa59b4a4..a1ee26a5c7b2 100644 --- a/third_party/rust/naga/src/back/spv/writer.rs +++ b/third_party/rust/naga/src/back/spv/writer.rs @@ -1150,7 +1150,7 @@ impl Writer { } pub(super) fn get_constant_scalar(&mut self, value: crate::Literal) -> Word { - let scalar = CachedConstant::Literal(value); + let scalar = CachedConstant::Literal(value.into()); if let Some(&id) = self.cached_constants.get(&scalar) { return id; } @@ -1310,7 +1310,11 @@ impl Writer { spirv::MemorySemantics::WORKGROUP_MEMORY, flags.contains(crate::Barrier::WORK_GROUP), ); - let exec_scope_id = self.get_index_constant(spirv::Scope::Workgroup as u32); + let exec_scope_id = if flags.contains(crate::Barrier::SUB_GROUP) { + self.get_index_constant(spirv::Scope::Subgroup as u32) + } else { + self.get_index_constant(spirv::Scope::Workgroup as u32) + }; let mem_scope_id = self.get_index_constant(memory_scope as u32); let semantics_id = self.get_index_constant(semantics.bits()); block.body.push(Instruction::control_barrier( @@ -1585,6 +1589,41 @@ impl Writer { Bi::WorkGroupId => BuiltIn::WorkgroupId, Bi::WorkGroupSize => BuiltIn::WorkgroupSize, Bi::NumWorkGroups => BuiltIn::NumWorkgroups, + // Subgroup + Bi::NumSubgroups => { + self.require_any( + "`num_subgroups` built-in", + &[spirv::Capability::GroupNonUniform], + )?; + BuiltIn::NumSubgroups + } + Bi::SubgroupId => { + self.require_any( + "`subgroup_id` built-in", + &[spirv::Capability::GroupNonUniform], + )?; + BuiltIn::SubgroupId + } + Bi::SubgroupSize => { + self.require_any( + "`subgroup_size` built-in", + &[ + spirv::Capability::GroupNonUniform, + spirv::Capability::SubgroupBallotKHR, + ], + )?; + BuiltIn::SubgroupSize + } + Bi::SubgroupInvocationId => { + self.require_any( + "`subgroup_invocation_id` built-in", + &[ + spirv::Capability::GroupNonUniform, + spirv::Capability::SubgroupBallotKHR, + ], + )?; + BuiltIn::SubgroupLocalInvocationId + } }; self.decorate(id, Decoration::BuiltIn, &[built_in as u32]); diff --git a/third_party/rust/naga/src/back/wgsl/writer.rs b/third_party/rust/naga/src/back/wgsl/writer.rs index b63e16da3bcb..789f6f62bfce 100644 --- a/third_party/rust/naga/src/back/wgsl/writer.rs +++ b/third_party/rust/naga/src/back/wgsl/writer.rs @@ -924,8 +924,124 @@ impl Writer { if barrier.contains(crate::Barrier::WORK_GROUP) { writeln!(self.out, "{level}workgroupBarrier();")?; } + + if barrier.contains(crate::Barrier::SUB_GROUP) { + writeln!(self.out, "{level}subgroupBarrier();")?; + } } Statement::RayQuery { .. } => unreachable!(), + Statement::SubgroupBallot { result, predicate } => { + write!(self.out, "{level}")?; + let res_name = format!("{}{}", back::BAKE_PREFIX, result.index()); + self.start_named_expr(module, result, func_ctx, &res_name)?; + self.named_expressions.insert(result, res_name); + + write!(self.out, "subgroupBallot(")?; + if let Some(predicate) = predicate { + self.write_expr(module, predicate, func_ctx)?; + } + writeln!(self.out, ");")?; + } + Statement::SubgroupCollectiveOperation { + op, + collective_op, + argument, + result, + } => { + write!(self.out, "{level}")?; + let res_name = format!("{}{}", back::BAKE_PREFIX, result.index()); + self.start_named_expr(module, result, func_ctx, &res_name)?; + self.named_expressions.insert(result, res_name); + + match (collective_op, op) { + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::All) => { + write!(self.out, "subgroupAll(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Any) => { + write!(self.out, "subgroupAny(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Add) => { + write!(self.out, "subgroupAdd(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Mul) => { + write!(self.out, "subgroupMul(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Max) => { + write!(self.out, "subgroupMax(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Min) => { + write!(self.out, "subgroupMin(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::And) => { + write!(self.out, "subgroupAnd(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Or) => { + write!(self.out, "subgroupOr(")? + } + (crate::CollectiveOperation::Reduce, crate::SubgroupOperation::Xor) => { + write!(self.out, "subgroupXor(")? + } + (crate::CollectiveOperation::ExclusiveScan, crate::SubgroupOperation::Add) => { + write!(self.out, "subgroupExclusiveAdd(")? + } + (crate::CollectiveOperation::ExclusiveScan, crate::SubgroupOperation::Mul) => { + write!(self.out, "subgroupExclusiveMul(")? + } + (crate::CollectiveOperation::InclusiveScan, crate::SubgroupOperation::Add) => { + write!(self.out, "subgroupInclusiveAdd(")? + } + (crate::CollectiveOperation::InclusiveScan, crate::SubgroupOperation::Mul) => { + write!(self.out, "subgroupInclusiveMul(")? + } + _ => unimplemented!(), + } + self.write_expr(module, argument, func_ctx)?; + writeln!(self.out, ");")?; + } + Statement::SubgroupGather { + mode, + argument, + result, + } => { + write!(self.out, "{level}")?; + let res_name = format!("{}{}", back::BAKE_PREFIX, result.index()); + self.start_named_expr(module, result, func_ctx, &res_name)?; + self.named_expressions.insert(result, res_name); + + match mode { + crate::GatherMode::BroadcastFirst => { + write!(self.out, "subgroupBroadcastFirst(")?; + } + crate::GatherMode::Broadcast(_) => { + write!(self.out, "subgroupBroadcast(")?; + } + crate::GatherMode::Shuffle(_) => { + write!(self.out, "subgroupShuffle(")?; + } + crate::GatherMode::ShuffleDown(_) => { + write!(self.out, "subgroupShuffleDown(")?; + } + crate::GatherMode::ShuffleUp(_) => { + write!(self.out, "subgroupShuffleUp(")?; + } + crate::GatherMode::ShuffleXor(_) => { + write!(self.out, "subgroupShuffleXor(")?; + } + } + self.write_expr(module, argument, func_ctx)?; + match mode { + crate::GatherMode::BroadcastFirst => {} + crate::GatherMode::Broadcast(index) + | crate::GatherMode::Shuffle(index) + | crate::GatherMode::ShuffleDown(index) + | crate::GatherMode::ShuffleUp(index) + | crate::GatherMode::ShuffleXor(index) => { + write!(self.out, ", ")?; + self.write_expr(module, index, func_ctx)?; + } + } + writeln!(self.out, ");")?; + } } Ok(()) @@ -1698,6 +1814,8 @@ impl Writer { Expression::CallResult(_) | Expression::AtomicResult { .. } | Expression::RayQueryProceedResult + | Expression::SubgroupBallotResult + | Expression::SubgroupOperationResult { .. } | Expression::WorkGroupUniformLoadResult { .. } => {} } @@ -1799,6 +1917,10 @@ fn builtin_str(built_in: crate::BuiltIn) -> Result<&'static str, Error> { Bi::SampleMask => "sample_mask", Bi::PrimitiveIndex => "primitive_index", Bi::ViewIndex => "view_index", + Bi::NumSubgroups => "num_subgroups", + Bi::SubgroupId => "subgroup_id", + Bi::SubgroupSize => "subgroup_size", + Bi::SubgroupInvocationId => "subgroup_invocation_id", Bi::BaseInstance | Bi::BaseVertex | Bi::ClipDistance diff --git a/third_party/rust/naga/src/compact/expressions.rs b/third_party/rust/naga/src/compact/expressions.rs index 0f2d8b1a02f1..a418bde3018d 100644 --- a/third_party/rust/naga/src/compact/expressions.rs +++ b/third_party/rust/naga/src/compact/expressions.rs @@ -72,6 +72,7 @@ impl<'tracer> ExpressionTracer<'tracer> { | Ex::GlobalVariable(_) | Ex::LocalVariable(_) | Ex::CallResult(_) + | Ex::SubgroupBallotResult | Ex::RayQueryProceedResult => {} Ex::Constant(handle) => { @@ -192,6 +193,7 @@ impl<'tracer> ExpressionTracer<'tracer> { Ex::AtomicResult { ty, comparison: _ } => self.types_used.insert(ty), Ex::WorkGroupUniformLoadResult { ty } => self.types_used.insert(ty), Ex::ArrayLength(expr) => self.expressions_used.insert(expr), + Ex::SubgroupOperationResult { ty } => self.types_used.insert(ty), Ex::RayQueryGetIntersection { query, committed: _, @@ -223,6 +225,7 @@ impl ModuleMap { | Ex::GlobalVariable(_) | Ex::LocalVariable(_) | Ex::CallResult(_) + | Ex::SubgroupBallotResult | Ex::RayQueryProceedResult => {} // All overrides are retained, so their handles never change. @@ -353,6 +356,7 @@ impl ModuleMap { comparison: _, } => self.types.adjust(ty), Ex::WorkGroupUniformLoadResult { ref mut ty } => self.types.adjust(ty), + Ex::SubgroupOperationResult { ref mut ty } => self.types.adjust(ty), Ex::ArrayLength(ref mut expr) => adjust(expr), Ex::RayQueryGetIntersection { ref mut query, diff --git a/third_party/rust/naga/src/compact/statements.rs b/third_party/rust/naga/src/compact/statements.rs index 0698b57258e3..a124281bc125 100644 --- a/third_party/rust/naga/src/compact/statements.rs +++ b/third_party/rust/naga/src/compact/statements.rs @@ -97,6 +97,39 @@ impl FunctionTracer<'_> { self.expressions_used.insert(query); self.trace_ray_query_function(fun); } + St::SubgroupBallot { result, predicate } => { + if let Some(predicate) = predicate { + self.expressions_used.insert(predicate) + } + self.expressions_used.insert(result) + } + St::SubgroupCollectiveOperation { + op: _, + collective_op: _, + argument, + result, + } => { + self.expressions_used.insert(argument); + self.expressions_used.insert(result) + } + St::SubgroupGather { + mode, + argument, + result, + } => { + match mode { + crate::GatherMode::BroadcastFirst => {} + crate::GatherMode::Broadcast(index) + | crate::GatherMode::Shuffle(index) + | crate::GatherMode::ShuffleDown(index) + | crate::GatherMode::ShuffleUp(index) + | crate::GatherMode::ShuffleXor(index) => { + self.expressions_used.insert(index) + } + } + self.expressions_used.insert(argument); + self.expressions_used.insert(result) + } // Trivial statements. St::Break @@ -250,6 +283,40 @@ impl FunctionMap { adjust(query); self.adjust_ray_query_function(fun); } + St::SubgroupBallot { + ref mut result, + ref mut predicate, + } => { + if let Some(ref mut predicate) = *predicate { + adjust(predicate); + } + adjust(result); + } + St::SubgroupCollectiveOperation { + op: _, + collective_op: _, + ref mut argument, + ref mut result, + } => { + adjust(argument); + adjust(result); + } + St::SubgroupGather { + ref mut mode, + ref mut argument, + ref mut result, + } => { + match *mode { + crate::GatherMode::BroadcastFirst => {} + crate::GatherMode::Broadcast(ref mut index) + | crate::GatherMode::Shuffle(ref mut index) + | crate::GatherMode::ShuffleDown(ref mut index) + | crate::GatherMode::ShuffleUp(ref mut index) + | crate::GatherMode::ShuffleXor(ref mut index) => adjust(index), + } + adjust(argument); + adjust(result); + } // Trivial statements. St::Break diff --git a/third_party/rust/naga/src/front/spv/convert.rs b/third_party/rust/naga/src/front/spv/convert.rs index f0a714fbeb9e..a6bf0e0451d3 100644 --- a/third_party/rust/naga/src/front/spv/convert.rs +++ b/third_party/rust/naga/src/front/spv/convert.rs @@ -153,6 +153,11 @@ pub(super) fn map_builtin(word: spirv::Word, invariant: bool) -> Result crate::BuiltIn::WorkGroupId, Some(Bi::WorkgroupSize) => crate::BuiltIn::WorkGroupSize, Some(Bi::NumWorkgroups) => crate::BuiltIn::NumWorkGroups, + // subgroup + Some(Bi::NumSubgroups) => crate::BuiltIn::NumSubgroups, + Some(Bi::SubgroupId) => crate::BuiltIn::SubgroupId, + Some(Bi::SubgroupSize) => crate::BuiltIn::SubgroupSize, + Some(Bi::SubgroupLocalInvocationId) => crate::BuiltIn::SubgroupInvocationId, _ => return Err(Error::UnsupportedBuiltIn(word)), }) } diff --git a/third_party/rust/naga/src/front/spv/error.rs b/third_party/rust/naga/src/front/spv/error.rs index 2825a44a003f..ecb54425d4cd 100644 --- a/third_party/rust/naga/src/front/spv/error.rs +++ b/third_party/rust/naga/src/front/spv/error.rs @@ -58,6 +58,8 @@ pub enum Error { UnknownBinaryOperator(spirv::Op), #[error("unknown relational function {0:?}")] UnknownRelationalFunction(spirv::Op), + #[error("unsupported group operation %{0}")] + UnsupportedGroupOperation(spirv::Word), #[error("invalid parameter {0:?}")] InvalidParameter(spirv::Op), #[error("invalid operand count {1} for {0:?}")] diff --git a/third_party/rust/naga/src/front/spv/mod.rs b/third_party/rust/naga/src/front/spv/mod.rs index 2ad40677fbba..7ac5a18cd68a 100644 --- a/third_party/rust/naga/src/front/spv/mod.rs +++ b/third_party/rust/naga/src/front/spv/mod.rs @@ -3700,6 +3700,254 @@ impl> Frontend { }, ); } + Op::GroupNonUniformBallot => { + inst.expect(5)?; + block.extend(emitter.finish(ctx.expressions)); + let result_type_id = self.next()?; + let result_id = self.next()?; + let exec_scope_id = self.next()?; + let predicate_id = self.next()?; + + let exec_scope_const = self.lookup_constant.lookup(exec_scope_id)?; + let _exec_scope = resolve_constant(ctx.gctx(), &exec_scope_const.inner) + .filter(|exec_scope| *exec_scope == spirv::Scope::Subgroup as u32) + .ok_or(Error::InvalidBarrierScope(exec_scope_id))?; + + let predicate = if self + .lookup_constant + .lookup(predicate_id) + .ok() + .filter(|predicate_const| match predicate_const.inner { + Constant::Constant(constant) => matches!( + ctx.gctx().global_expressions[ctx.gctx().constants[constant].init], + crate::Expression::Literal(crate::Literal::Bool(true)), + ), + Constant::Override(_) => false, + }) + .is_some() + { + None + } else { + let predicate_lookup = self.lookup_expression.lookup(predicate_id)?; + let predicate_handle = get_expr_handle!(predicate_id, predicate_lookup); + Some(predicate_handle) + }; + + let result_handle = ctx + .expressions + .append(crate::Expression::SubgroupBallotResult, span); + self.lookup_expression.insert( + result_id, + LookupExpression { + handle: result_handle, + type_id: result_type_id, + block_id, + }, + ); + + block.push( + crate::Statement::SubgroupBallot { + result: result_handle, + predicate, + }, + span, + ); + emitter.start(ctx.expressions); + } + spirv::Op::GroupNonUniformAll + | spirv::Op::GroupNonUniformAny + | spirv::Op::GroupNonUniformIAdd + | spirv::Op::GroupNonUniformFAdd + | spirv::Op::GroupNonUniformIMul + | spirv::Op::GroupNonUniformFMul + | spirv::Op::GroupNonUniformSMax + | spirv::Op::GroupNonUniformUMax + | spirv::Op::GroupNonUniformFMax + | spirv::Op::GroupNonUniformSMin + | spirv::Op::GroupNonUniformUMin + | spirv::Op::GroupNonUniformFMin + | spirv::Op::GroupNonUniformBitwiseAnd + | spirv::Op::GroupNonUniformBitwiseOr + | spirv::Op::GroupNonUniformBitwiseXor + | spirv::Op::GroupNonUniformLogicalAnd + | spirv::Op::GroupNonUniformLogicalOr + | spirv::Op::GroupNonUniformLogicalXor => { + block.extend(emitter.finish(ctx.expressions)); + inst.expect( + if matches!( + inst.op, + spirv::Op::GroupNonUniformAll | spirv::Op::GroupNonUniformAny + ) { + 5 + } else { + 6 + }, + )?; + let result_type_id = self.next()?; + let result_id = self.next()?; + let exec_scope_id = self.next()?; + let collective_op_id = match inst.op { + spirv::Op::GroupNonUniformAll | spirv::Op::GroupNonUniformAny => { + crate::CollectiveOperation::Reduce + } + _ => { + let group_op_id = self.next()?; + match spirv::GroupOperation::from_u32(group_op_id) { + Some(spirv::GroupOperation::Reduce) => { + crate::CollectiveOperation::Reduce + } + Some(spirv::GroupOperation::InclusiveScan) => { + crate::CollectiveOperation::InclusiveScan + } + Some(spirv::GroupOperation::ExclusiveScan) => { + crate::CollectiveOperation::ExclusiveScan + } + _ => return Err(Error::UnsupportedGroupOperation(group_op_id)), + } + } + }; + let argument_id = self.next()?; + + let argument_lookup = self.lookup_expression.lookup(argument_id)?; + let argument_handle = get_expr_handle!(argument_id, argument_lookup); + + let exec_scope_const = self.lookup_constant.lookup(exec_scope_id)?; + let _exec_scope = resolve_constant(ctx.gctx(), &exec_scope_const.inner) + .filter(|exec_scope| *exec_scope == spirv::Scope::Subgroup as u32) + .ok_or(Error::InvalidBarrierScope(exec_scope_id))?; + + let op_id = match inst.op { + spirv::Op::GroupNonUniformAll => crate::SubgroupOperation::All, + spirv::Op::GroupNonUniformAny => crate::SubgroupOperation::Any, + spirv::Op::GroupNonUniformIAdd | spirv::Op::GroupNonUniformFAdd => { + crate::SubgroupOperation::Add + } + spirv::Op::GroupNonUniformIMul | spirv::Op::GroupNonUniformFMul => { + crate::SubgroupOperation::Mul + } + spirv::Op::GroupNonUniformSMax + | spirv::Op::GroupNonUniformUMax + | spirv::Op::GroupNonUniformFMax => crate::SubgroupOperation::Max, + spirv::Op::GroupNonUniformSMin + | spirv::Op::GroupNonUniformUMin + | spirv::Op::GroupNonUniformFMin => crate::SubgroupOperation::Min, + spirv::Op::GroupNonUniformBitwiseAnd + | spirv::Op::GroupNonUniformLogicalAnd => crate::SubgroupOperation::And, + spirv::Op::GroupNonUniformBitwiseOr + | spirv::Op::GroupNonUniformLogicalOr => crate::SubgroupOperation::Or, + spirv::Op::GroupNonUniformBitwiseXor + | spirv::Op::GroupNonUniformLogicalXor => crate::SubgroupOperation::Xor, + _ => unreachable!(), + }; + + let result_type = self.lookup_type.lookup(result_type_id)?; + + let result_handle = ctx.expressions.append( + crate::Expression::SubgroupOperationResult { + ty: result_type.handle, + }, + span, + ); + self.lookup_expression.insert( + result_id, + LookupExpression { + handle: result_handle, + type_id: result_type_id, + block_id, + }, + ); + + block.push( + crate::Statement::SubgroupCollectiveOperation { + result: result_handle, + op: op_id, + collective_op: collective_op_id, + argument: argument_handle, + }, + span, + ); + emitter.start(ctx.expressions); + } + Op::GroupNonUniformBroadcastFirst + | Op::GroupNonUniformBroadcast + | Op::GroupNonUniformShuffle + | Op::GroupNonUniformShuffleDown + | Op::GroupNonUniformShuffleUp + | Op::GroupNonUniformShuffleXor => { + inst.expect( + if matches!(inst.op, spirv::Op::GroupNonUniformBroadcastFirst) { + 5 + } else { + 6 + }, + )?; + block.extend(emitter.finish(ctx.expressions)); + let result_type_id = self.next()?; + let result_id = self.next()?; + let exec_scope_id = self.next()?; + let argument_id = self.next()?; + + let argument_lookup = self.lookup_expression.lookup(argument_id)?; + let argument_handle = get_expr_handle!(argument_id, argument_lookup); + + let exec_scope_const = self.lookup_constant.lookup(exec_scope_id)?; + let _exec_scope = resolve_constant(ctx.gctx(), &exec_scope_const.inner) + .filter(|exec_scope| *exec_scope == spirv::Scope::Subgroup as u32) + .ok_or(Error::InvalidBarrierScope(exec_scope_id))?; + + let mode = if matches!(inst.op, spirv::Op::GroupNonUniformBroadcastFirst) { + crate::GatherMode::BroadcastFirst + } else { + let index_id = self.next()?; + let index_lookup = self.lookup_expression.lookup(index_id)?; + let index_handle = get_expr_handle!(index_id, index_lookup); + match inst.op { + spirv::Op::GroupNonUniformBroadcast => { + crate::GatherMode::Broadcast(index_handle) + } + spirv::Op::GroupNonUniformShuffle => { + crate::GatherMode::Shuffle(index_handle) + } + spirv::Op::GroupNonUniformShuffleDown => { + crate::GatherMode::ShuffleDown(index_handle) + } + spirv::Op::GroupNonUniformShuffleUp => { + crate::GatherMode::ShuffleUp(index_handle) + } + spirv::Op::GroupNonUniformShuffleXor => { + crate::GatherMode::ShuffleXor(index_handle) + } + _ => unreachable!(), + } + }; + + let result_type = self.lookup_type.lookup(result_type_id)?; + + let result_handle = ctx.expressions.append( + crate::Expression::SubgroupOperationResult { + ty: result_type.handle, + }, + span, + ); + self.lookup_expression.insert( + result_id, + LookupExpression { + handle: result_handle, + type_id: result_type_id, + block_id, + }, + ); + + block.push( + crate::Statement::SubgroupGather { + result: result_handle, + mode, + argument: argument_handle, + }, + span, + ); + emitter.start(ctx.expressions); + } _ => return Err(Error::UnsupportedInstruction(self.state, inst.op)), } }; @@ -3824,7 +4072,10 @@ impl> Frontend { | S::Store { .. } | S::ImageStore { .. } | S::Atomic { .. } - | S::RayQuery { .. } => {} + | S::RayQuery { .. } + | S::SubgroupBallot { .. } + | S::SubgroupCollectiveOperation { .. } + | S::SubgroupGather { .. } => {} S::Call { function: ref mut callee, ref arguments, diff --git a/third_party/rust/naga/src/front/wgsl/lower/mod.rs b/third_party/rust/naga/src/front/wgsl/lower/mod.rs index 77212f208658..e7cce1772308 100644 --- a/third_party/rust/naga/src/front/wgsl/lower/mod.rs +++ b/third_party/rust/naga/src/front/wgsl/lower/mod.rs @@ -874,6 +874,29 @@ impl Texture { } } +enum SubgroupGather { + BroadcastFirst, + Broadcast, + Shuffle, + ShuffleDown, + ShuffleUp, + ShuffleXor, +} + +impl SubgroupGather { + pub fn map(word: &str) -> Option { + Some(match word { + "subgroupBroadcastFirst" => Self::BroadcastFirst, + "subgroupBroadcast" => Self::Broadcast, + "subgroupShuffle" => Self::Shuffle, + "subgroupShuffleDown" => Self::ShuffleDown, + "subgroupShuffleUp" => Self::ShuffleUp, + "subgroupShuffleXor" => Self::ShuffleXor, + _ => return None, + }) + } +} + pub struct Lowerer<'source, 'temp> { index: &'temp Index<'source>, layouter: Layouter, @@ -2054,6 +2077,16 @@ impl<'source, 'temp> Lowerer<'source, 'temp> { } } else if let Some(fun) = Texture::map(function.name) { self.texture_sample_helper(fun, arguments, span, ctx)? + } else if let Some((op, cop)) = conv::map_subgroup_operation(function.name) { + return Ok(Some( + self.subgroup_operation_helper(span, op, cop, arguments, ctx)?, + )); + } else if let Some(mode) = SubgroupGather::map(function.name) { + return Ok(Some( + self.subgroup_gather_helper(span, mode, arguments, ctx)?, + )); + } else if let Some(fun) = crate::AtomicFunction::map(function.name) { + return Ok(Some(self.atomic_helper(span, fun, arguments, ctx)?)); } else { match function.name { "select" => { @@ -2099,70 +2132,6 @@ impl<'source, 'temp> Lowerer<'source, 'temp> { .push(crate::Statement::Store { pointer, value }, span); return Ok(None); } - "atomicAdd" => { - return Ok(Some(self.atomic_helper( - span, - crate::AtomicFunction::Add, - arguments, - ctx, - )?)) - } - "atomicSub" => { - return Ok(Some(self.atomic_helper( - span, - crate::AtomicFunction::Subtract, - arguments, - ctx, - )?)) - } - "atomicAnd" => { - return Ok(Some(self.atomic_helper( - span, - crate::AtomicFunction::And, - arguments, - ctx, - )?)) - } - "atomicOr" => { - return Ok(Some(self.atomic_helper( - span, - crate::AtomicFunction::InclusiveOr, - arguments, - ctx, - )?)) - } - "atomicXor" => { - return Ok(Some(self.atomic_helper( - span, - crate::AtomicFunction::ExclusiveOr, - arguments, - ctx, - )?)) - } - "atomicMin" => { - return Ok(Some(self.atomic_helper( - span, - crate::AtomicFunction::Min, - arguments, - ctx, - )?)) - } - "atomicMax" => { - return Ok(Some(self.atomic_helper( - span, - crate::AtomicFunction::Max, - arguments, - ctx, - )?)) - } - "atomicExchange" => { - return Ok(Some(self.atomic_helper( - span, - crate::AtomicFunction::Exchange { compare: None }, - arguments, - ctx, - )?)) - } "atomicCompareExchangeWeak" => { let mut args = ctx.prepare_args(arguments, 3, span); @@ -2221,6 +2190,14 @@ impl<'source, 'temp> Lowerer<'source, 'temp> { .push(crate::Statement::Barrier(crate::Barrier::WORK_GROUP), span); return Ok(None); } + "subgroupBarrier" => { + ctx.prepare_args(arguments, 0, span).finish()?; + + let rctx = ctx.runtime_expression_ctx(span)?; + rctx.block + .push(crate::Statement::Barrier(crate::Barrier::SUB_GROUP), span); + return Ok(None); + } "workgroupUniformLoad" => { let mut args = ctx.prepare_args(arguments, 1, span); let expr = args.next()?; @@ -2428,6 +2405,22 @@ impl<'source, 'temp> Lowerer<'source, 'temp> { )?; return Ok(Some(handle)); } + "subgroupBallot" => { + let mut args = ctx.prepare_args(arguments, 0, span); + let predicate = if arguments.len() == 1 { + Some(self.expression(args.next()?, ctx)?) + } else { + None + }; + args.finish()?; + + let result = ctx + .interrupt_emitter(crate::Expression::SubgroupBallotResult, span)?; + let rctx = ctx.runtime_expression_ctx(span)?; + rctx.block + .push(crate::Statement::SubgroupBallot { result, predicate }, span); + return Ok(Some(result)); + } _ => return Err(Error::UnknownIdent(function.span, function.name)), } }; @@ -2619,6 +2612,80 @@ impl<'source, 'temp> Lowerer<'source, 'temp> { }) } + fn subgroup_operation_helper( + &mut self, + span: Span, + op: crate::SubgroupOperation, + collective_op: crate::CollectiveOperation, + arguments: &[Handle>], + ctx: &mut ExpressionContext<'source, '_, '_>, + ) -> Result, Error<'source>> { + let mut args = ctx.prepare_args(arguments, 1, span); + + let argument = self.expression(args.next()?, ctx)?; + args.finish()?; + + let ty = ctx.register_type(argument)?; + + let result = + ctx.interrupt_emitter(crate::Expression::SubgroupOperationResult { ty }, span)?; + let rctx = ctx.runtime_expression_ctx(span)?; + rctx.block.push( + crate::Statement::SubgroupCollectiveOperation { + op, + collective_op, + argument, + result, + }, + span, + ); + Ok(result) + } + + fn subgroup_gather_helper( + &mut self, + span: Span, + mode: SubgroupGather, + arguments: &[Handle>], + ctx: &mut ExpressionContext<'source, '_, '_>, + ) -> Result, Error<'source>> { + let mut args = ctx.prepare_args(arguments, 2, span); + + let argument = self.expression(args.next()?, ctx)?; + + use SubgroupGather as Sg; + let mode = if let Sg::BroadcastFirst = mode { + crate::GatherMode::BroadcastFirst + } else { + let index = self.expression(args.next()?, ctx)?; + match mode { + Sg::Broadcast => crate::GatherMode::Broadcast(index), + Sg::Shuffle => crate::GatherMode::Shuffle(index), + Sg::ShuffleDown => crate::GatherMode::ShuffleDown(index), + Sg::ShuffleUp => crate::GatherMode::ShuffleUp(index), + Sg::ShuffleXor => crate::GatherMode::ShuffleXor(index), + Sg::BroadcastFirst => unreachable!(), + } + }; + + args.finish()?; + + let ty = ctx.register_type(argument)?; + + let result = + ctx.interrupt_emitter(crate::Expression::SubgroupOperationResult { ty }, span)?; + let rctx = ctx.runtime_expression_ctx(span)?; + rctx.block.push( + crate::Statement::SubgroupGather { + mode, + argument, + result, + }, + span, + ); + Ok(result) + } + fn r#struct( &mut self, s: &ast::Struct<'source>, @@ -2877,3 +2944,19 @@ impl<'source, 'temp> Lowerer<'source, 'temp> { } } } + +impl crate::AtomicFunction { + pub fn map(word: &str) -> Option { + Some(match word { + "atomicAdd" => crate::AtomicFunction::Add, + "atomicSub" => crate::AtomicFunction::Subtract, + "atomicAnd" => crate::AtomicFunction::And, + "atomicOr" => crate::AtomicFunction::InclusiveOr, + "atomicXor" => crate::AtomicFunction::ExclusiveOr, + "atomicMin" => crate::AtomicFunction::Min, + "atomicMax" => crate::AtomicFunction::Max, + "atomicExchange" => crate::AtomicFunction::Exchange { compare: None }, + _ => return None, + }) + } +} diff --git a/third_party/rust/naga/src/front/wgsl/parse/conv.rs b/third_party/rust/naga/src/front/wgsl/parse/conv.rs index 1a4911a3bdb1..207f0eda4120 100644 --- a/third_party/rust/naga/src/front/wgsl/parse/conv.rs +++ b/third_party/rust/naga/src/front/wgsl/parse/conv.rs @@ -35,6 +35,11 @@ pub fn map_built_in(word: &str, span: Span) -> Result> "local_invocation_index" => crate::BuiltIn::LocalInvocationIndex, "workgroup_id" => crate::BuiltIn::WorkGroupId, "num_workgroups" => crate::BuiltIn::NumWorkGroups, + // subgroup + "num_subgroups" => crate::BuiltIn::NumSubgroups, + "subgroup_id" => crate::BuiltIn::SubgroupId, + "subgroup_size" => crate::BuiltIn::SubgroupSize, + "subgroup_invocation_id" => crate::BuiltIn::SubgroupInvocationId, _ => return Err(Error::UnknownBuiltin(span)), }) } @@ -260,3 +265,26 @@ pub fn map_conservative_depth( _ => Err(Error::UnknownConservativeDepth(span)), } } + +pub fn map_subgroup_operation( + word: &str, +) -> Option<(crate::SubgroupOperation, crate::CollectiveOperation)> { + use crate::CollectiveOperation as co; + use crate::SubgroupOperation as sg; + Some(match word { + "subgroupAll" => (sg::All, co::Reduce), + "subgroupAny" => (sg::Any, co::Reduce), + "subgroupAdd" => (sg::Add, co::Reduce), + "subgroupMul" => (sg::Mul, co::Reduce), + "subgroupMin" => (sg::Min, co::Reduce), + "subgroupMax" => (sg::Max, co::Reduce), + "subgroupAnd" => (sg::And, co::Reduce), + "subgroupOr" => (sg::Or, co::Reduce), + "subgroupXor" => (sg::Xor, co::Reduce), + "subgroupExclusiveAdd" => (sg::Add, co::ExclusiveScan), + "subgroupExclusiveMul" => (sg::Mul, co::ExclusiveScan), + "subgroupInclusiveAdd" => (sg::Add, co::InclusiveScan), + "subgroupInclusiveMul" => (sg::Mul, co::InclusiveScan), + _ => return None, + }) +} diff --git a/third_party/rust/naga/src/lib.rs b/third_party/rust/naga/src/lib.rs index ceb7e55b7b84..f2d0360aa83e 100644 --- a/third_party/rust/naga/src/lib.rs +++ b/third_party/rust/naga/src/lib.rs @@ -431,6 +431,11 @@ pub enum BuiltIn { WorkGroupId, WorkGroupSize, NumWorkGroups, + // subgroup + NumSubgroups, + SubgroupId, + SubgroupSize, + SubgroupInvocationId, } /// Number of bytes per scalar. @@ -866,7 +871,7 @@ pub enum TypeInner { BindingArray { base: Handle, size: ArraySize }, } -#[derive(Debug, Clone, Copy, PartialOrd)] +#[derive(Debug, Clone, Copy, PartialEq, PartialOrd)] #[cfg_attr(feature = "serialize", derive(Serialize))] #[cfg_attr(feature = "deserialize", derive(Deserialize))] #[cfg_attr(feature = "arbitrary", derive(Arbitrary))] @@ -1277,6 +1282,51 @@ pub enum SwizzleComponent { W = 3, } +#[derive(Clone, Copy, Debug, Hash, Eq, Ord, PartialEq, PartialOrd)] +#[cfg_attr(feature = "serialize", derive(Serialize))] +#[cfg_attr(feature = "deserialize", derive(Deserialize))] +#[cfg_attr(feature = "arbitrary", derive(Arbitrary))] +pub enum GatherMode { + /// All gather from the active lane with the smallest index + BroadcastFirst, + /// All gather from the same lane at the index given by the expression + Broadcast(Handle), + /// Each gathers from a different lane at the index given by the expression + Shuffle(Handle), + /// Each gathers from their lane plus the shift given by the expression + ShuffleDown(Handle), + /// Each gathers from their lane minus the shift given by the expression + ShuffleUp(Handle), + /// Each gathers from their lane xored with the given by the expression + ShuffleXor(Handle), +} + +#[derive(Clone, Copy, Debug, Hash, Eq, Ord, PartialEq, PartialOrd)] +#[cfg_attr(feature = "serialize", derive(Serialize))] +#[cfg_attr(feature = "deserialize", derive(Deserialize))] +#[cfg_attr(feature = "arbitrary", derive(Arbitrary))] +pub enum SubgroupOperation { + All = 0, + Any = 1, + Add = 2, + Mul = 3, + Min = 4, + Max = 5, + And = 6, + Or = 7, + Xor = 8, +} + +#[derive(Clone, Copy, Debug, Hash, Eq, Ord, PartialEq, PartialOrd)] +#[cfg_attr(feature = "serialize", derive(Serialize))] +#[cfg_attr(feature = "deserialize", derive(Deserialize))] +#[cfg_attr(feature = "arbitrary", derive(Arbitrary))] +pub enum CollectiveOperation { + Reduce = 0, + InclusiveScan = 1, + ExclusiveScan = 2, +} + bitflags::bitflags! { /// Memory barrier flags. #[cfg_attr(feature = "serialize", derive(Serialize))] @@ -1285,9 +1335,11 @@ bitflags::bitflags! { #[derive(Clone, Copy, Debug, Default, Eq, PartialEq)] pub struct Barrier: u32 { /// Barrier affects all `AddressSpace::Storage` accesses. - const STORAGE = 0x1; + const STORAGE = 1 << 0; /// Barrier affects all `AddressSpace::WorkGroup` accesses. - const WORK_GROUP = 0x2; + const WORK_GROUP = 1 << 1; + /// Barrier synchronizes execution across all invocations within a subgroup that exectue this instruction. + const SUB_GROUP = 1 << 2; } } @@ -1588,6 +1640,15 @@ pub enum Expression { query: Handle, committed: bool, }, + /// Result of a [`SubgroupBallot`] statement. + /// + /// [`SubgroupBallot`]: Statement::SubgroupBallot + SubgroupBallotResult, + /// Result of a [`SubgroupCollectiveOperation`] or [`SubgroupGather`] statement. + /// + /// [`SubgroupCollectiveOperation`]: Statement::SubgroupCollectiveOperation + /// [`SubgroupGather`]: Statement::SubgroupGather + SubgroupOperationResult { ty: Handle }, } pub use block::Block; @@ -1872,6 +1933,39 @@ pub enum Statement { /// The specific operation we're performing on `query`. fun: RayQueryFunction, }, + /// Calculate a bitmask using a boolean from each active thread in the subgroup + SubgroupBallot { + /// The [`SubgroupBallotResult`] expression representing this load's result. + /// + /// [`SubgroupBallotResult`]: Expression::SubgroupBallotResult + result: Handle, + /// The value from this thread to store in the ballot + predicate: Option>, + }, + /// Gather a value from another active thread in the subgroup + SubgroupGather { + /// Specifies which thread to gather from + mode: GatherMode, + /// The value to broadcast over + argument: Handle, + /// The [`SubgroupOperationResult`] expression representing this load's result. + /// + /// [`SubgroupOperationResult`]: Expression::SubgroupOperationResult + result: Handle, + }, + /// Compute a collective operation across all active threads in the subgroup + SubgroupCollectiveOperation { + /// What operation to compute + op: SubgroupOperation, + /// How to combine the results + collective_op: CollectiveOperation, + /// The value to compute over + argument: Handle, + /// The [`SubgroupOperationResult`] expression representing this load's result. + /// + /// [`SubgroupOperationResult`]: Expression::SubgroupOperationResult + result: Handle, + }, } /// A function argument. diff --git a/third_party/rust/naga/src/proc/constant_evaluator.rs b/third_party/rust/naga/src/proc/constant_evaluator.rs index 547fbbc65220..6a4a5159ddfe 100644 --- a/third_party/rust/naga/src/proc/constant_evaluator.rs +++ b/third_party/rust/naga/src/proc/constant_evaluator.rs @@ -476,6 +476,8 @@ pub enum ConstantEvaluatorError { ImageExpression, #[error("Constants don't support ray query expressions")] RayQueryExpression, + #[error("Constants don't support subgroup expressions")] + SubgroupExpression, #[error("Cannot access the type")] InvalidAccessBase, #[error("Cannot access at the index")] @@ -884,6 +886,12 @@ impl<'a> ConstantEvaluator<'a> { Expression::RayQueryProceedResult | Expression::RayQueryGetIntersection { .. } => { Err(ConstantEvaluatorError::RayQueryExpression) } + Expression::SubgroupBallotResult { .. } => { + Err(ConstantEvaluatorError::SubgroupExpression) + } + Expression::SubgroupOperationResult { .. } => { + Err(ConstantEvaluatorError::SubgroupExpression) + } } } diff --git a/third_party/rust/naga/src/proc/mod.rs b/third_party/rust/naga/src/proc/mod.rs index 0d45d8e47c10..93aac5b3e52d 100644 --- a/third_party/rust/naga/src/proc/mod.rs +++ b/third_party/rust/naga/src/proc/mod.rs @@ -153,56 +153,31 @@ impl super::Scalar { } } -impl PartialEq for crate::Literal { - fn eq(&self, other: &Self) -> bool { - match (*self, *other) { - (Self::F64(a), Self::F64(b)) => a.to_bits() == b.to_bits(), - (Self::F32(a), Self::F32(b)) => a.to_bits() == b.to_bits(), - (Self::U32(a), Self::U32(b)) => a == b, - (Self::I32(a), Self::I32(b)) => a == b, - (Self::U64(a), Self::U64(b)) => a == b, - (Self::I64(a), Self::I64(b)) => a == b, - (Self::Bool(a), Self::Bool(b)) => a == b, - _ => false, - } - } +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] +pub enum HashableLiteral { + F64(u64), + F32(u32), + U32(u32), + I32(i32), + U64(u64), + I64(i64), + Bool(bool), + AbstractInt(i64), + AbstractFloat(u64), } -impl Eq for crate::Literal {} -impl std::hash::Hash for crate::Literal { - fn hash(&self, hasher: &mut H) { - match *self { - Self::F64(v) | Self::AbstractFloat(v) => { - hasher.write_u8(0); - v.to_bits().hash(hasher); - } - Self::F32(v) => { - hasher.write_u8(1); - v.to_bits().hash(hasher); - } - Self::U32(v) => { - hasher.write_u8(2); - v.hash(hasher); - } - Self::I32(v) => { - hasher.write_u8(3); - v.hash(hasher); - } - Self::Bool(v) => { - hasher.write_u8(4); - v.hash(hasher); - } - Self::I64(v) => { - hasher.write_u8(5); - v.hash(hasher); - } - Self::U64(v) => { - hasher.write_u8(6); - v.hash(hasher); - } - Self::AbstractInt(v) => { - hasher.write_u8(7); - v.hash(hasher); - } + +impl From for HashableLiteral { + fn from(l: crate::Literal) -> Self { + match l { + crate::Literal::F64(v) => Self::F64(v.to_bits()), + crate::Literal::F32(v) => Self::F32(v.to_bits()), + crate::Literal::U32(v) => Self::U32(v), + crate::Literal::I32(v) => Self::I32(v), + crate::Literal::U64(v) => Self::U64(v), + crate::Literal::I64(v) => Self::I64(v), + crate::Literal::Bool(v) => Self::Bool(v), + crate::Literal::AbstractInt(v) => Self::AbstractInt(v), + crate::Literal::AbstractFloat(v) => Self::AbstractFloat(v.to_bits()), } } } @@ -533,6 +508,7 @@ impl crate::Expression { match *self { Self::Literal(_) | Self::Constant(_) + | Self::Override(_) | Self::ZeroValue(_) | Self::FunctionArgument(_) | Self::GlobalVariable(_) diff --git a/third_party/rust/naga/src/proc/terminator.rs b/third_party/rust/naga/src/proc/terminator.rs index a5239d4eca78..5edf55cb73a2 100644 --- a/third_party/rust/naga/src/proc/terminator.rs +++ b/third_party/rust/naga/src/proc/terminator.rs @@ -37,6 +37,9 @@ pub fn ensure_block_returns(block: &mut crate::Block) { | S::RayQuery { .. } | S::Atomic { .. } | S::WorkGroupUniformLoad { .. } + | S::SubgroupBallot { .. } + | S::SubgroupCollectiveOperation { .. } + | S::SubgroupGather { .. } | S::Barrier(_)), ) | None => block.push(S::Return { value: None }, Default::default()), diff --git a/third_party/rust/naga/src/proc/typifier.rs b/third_party/rust/naga/src/proc/typifier.rs index 845b35cb4de3..3936e7efbed9 100644 --- a/third_party/rust/naga/src/proc/typifier.rs +++ b/third_party/rust/naga/src/proc/typifier.rs @@ -598,6 +598,7 @@ impl<'a> ResolveContext<'a> { | crate::BinaryOperator::ShiftRight => past(left)?.clone(), }, crate::Expression::AtomicResult { ty, .. } => TypeResolution::Handle(ty), + crate::Expression::SubgroupOperationResult { ty } => TypeResolution::Handle(ty), crate::Expression::WorkGroupUniformLoadResult { ty } => TypeResolution::Handle(ty), crate::Expression::Select { accept, .. } => past(accept)?.clone(), crate::Expression::Derivative { expr, .. } => past(expr)?.clone(), @@ -885,6 +886,10 @@ impl<'a> ResolveContext<'a> { .ok_or(ResolveError::MissingSpecialType)?; TypeResolution::Handle(result) } + crate::Expression::SubgroupBallotResult => TypeResolution::Value(Ti::Vector { + scalar: crate::Scalar::U32, + size: crate::VectorSize::Quad, + }), }) } } diff --git a/third_party/rust/naga/src/valid/analyzer.rs b/third_party/rust/naga/src/valid/analyzer.rs index d45c25c62ebc..cd577c24b7dc 100644 --- a/third_party/rust/naga/src/valid/analyzer.rs +++ b/third_party/rust/naga/src/valid/analyzer.rs @@ -787,6 +787,14 @@ impl FunctionInfo { non_uniform_result: self.add_ref(query), requirements: UniformityRequirements::empty(), }, + E::SubgroupBallotResult => Uniformity { + non_uniform_result: Some(handle), + requirements: UniformityRequirements::empty(), + }, + E::SubgroupOperationResult { .. } => Uniformity { + non_uniform_result: Some(handle), + requirements: UniformityRequirements::empty(), + }, }; let ty = resolve_context.resolve(expression, |h| Ok(&self[h].ty))?; @@ -1029,6 +1037,42 @@ impl FunctionInfo { } FunctionUniformity::new() } + S::SubgroupBallot { + result: _, + predicate, + } => { + if let Some(predicate) = predicate { + let _ = self.add_ref(predicate); + } + FunctionUniformity::new() + } + S::SubgroupCollectiveOperation { + op: _, + collective_op: _, + argument, + result: _, + } => { + let _ = self.add_ref(argument); + FunctionUniformity::new() + } + S::SubgroupGather { + mode, + argument, + result: _, + } => { + let _ = self.add_ref(argument); + match mode { + crate::GatherMode::BroadcastFirst => {} + crate::GatherMode::Broadcast(index) + | crate::GatherMode::Shuffle(index) + | crate::GatherMode::ShuffleDown(index) + | crate::GatherMode::ShuffleUp(index) + | crate::GatherMode::ShuffleXor(index) => { + let _ = self.add_ref(index); + } + } + FunctionUniformity::new() + } }; disruptor = disruptor.or(uniformity.exit_disruptor()); diff --git a/third_party/rust/naga/src/valid/expression.rs b/third_party/rust/naga/src/valid/expression.rs index bf46fd32628a..9e7ed8a6a03f 100644 --- a/third_party/rust/naga/src/valid/expression.rs +++ b/third_party/rust/naga/src/valid/expression.rs @@ -1641,6 +1641,7 @@ impl super::Validator { return Err(ExpressionError::InvalidRayQueryType(query)); } }, + E::SubgroupBallotResult | E::SubgroupOperationResult { .. } => self.subgroup_stages, }; Ok(stages) } diff --git a/third_party/rust/naga/src/valid/function.rs b/third_party/rust/naga/src/valid/function.rs index fe5681449e98..71128fc86da8 100644 --- a/third_party/rust/naga/src/valid/function.rs +++ b/third_party/rust/naga/src/valid/function.rs @@ -47,6 +47,19 @@ pub enum AtomicError { ResultTypeMismatch(Handle), } +#[derive(Clone, Debug, thiserror::Error)] +#[cfg_attr(test, derive(PartialEq))] +pub enum SubgroupError { + #[error("Operand {0:?} has invalid type.")] + InvalidOperand(Handle), + #[error("Result type for {0:?} doesn't match the statement")] + ResultTypeMismatch(Handle), + #[error("Support for subgroup operation {0:?} is required")] + UnsupportedOperation(super::SubgroupOperationSet), + #[error("Unknown operation")] + UnknownOperation, +} + #[derive(Clone, Debug, thiserror::Error)] #[cfg_attr(test, derive(PartialEq))] pub enum LocalVariableError { @@ -135,6 +148,8 @@ pub enum FunctionError { InvalidRayDescriptor(Handle), #[error("Ray Query {0:?} does not have a matching type")] InvalidRayQueryType(Handle), + #[error("Shader requires capability {0:?}")] + MissingCapability(super::Capabilities), #[error( "Required uniformity of control flow for {0:?} in {1:?} is not fulfilled because of {2:?}" )] @@ -155,6 +170,8 @@ pub enum FunctionError { WorkgroupUniformLoadExpressionMismatch(Handle), #[error("The expression {0:?} is not valid as a WorkGroupUniformLoad argument. It should be a Pointer in Workgroup address space")] WorkgroupUniformLoadInvalidPointer(Handle), + #[error("Subgroup operation is invalid")] + InvalidSubgroup(#[from] SubgroupError), } bitflags::bitflags! { @@ -399,6 +416,127 @@ impl super::Validator { } Ok(()) } + fn validate_subgroup_operation( + &mut self, + op: &crate::SubgroupOperation, + collective_op: &crate::CollectiveOperation, + argument: Handle, + result: Handle, + context: &BlockContext, + ) -> Result<(), WithSpan> { + let argument_inner = context.resolve_type(argument, &self.valid_expression_set)?; + + let (is_scalar, scalar) = match *argument_inner { + crate::TypeInner::Scalar(scalar) => (true, scalar), + crate::TypeInner::Vector { scalar, .. } => (false, scalar), + _ => { + log::error!("Subgroup operand type {:?}", argument_inner); + return Err(SubgroupError::InvalidOperand(argument) + .with_span_handle(argument, context.expressions) + .into_other()); + } + }; + + use crate::ScalarKind as sk; + use crate::SubgroupOperation as sg; + match (scalar.kind, *op) { + (sk::Bool, sg::All | sg::Any) if is_scalar => {} + (sk::Sint | sk::Uint | sk::Float, sg::Add | sg::Mul | sg::Min | sg::Max) => {} + (sk::Sint | sk::Uint, sg::And | sg::Or | sg::Xor) => {} + + (_, _) => { + log::error!("Subgroup operand type {:?}", argument_inner); + return Err(SubgroupError::InvalidOperand(argument) + .with_span_handle(argument, context.expressions) + .into_other()); + } + }; + + use crate::CollectiveOperation as co; + match (*collective_op, *op) { + ( + co::Reduce, + sg::All + | sg::Any + | sg::Add + | sg::Mul + | sg::Min + | sg::Max + | sg::And + | sg::Or + | sg::Xor, + ) => {} + (co::InclusiveScan | co::ExclusiveScan, sg::Add | sg::Mul) => {} + + (_, _) => { + return Err(SubgroupError::UnknownOperation.with_span().into_other()); + } + }; + + self.emit_expression(result, context)?; + match context.expressions[result] { + crate::Expression::SubgroupOperationResult { ty } + if { &context.types[ty].inner == argument_inner } => {} + _ => { + return Err(SubgroupError::ResultTypeMismatch(result) + .with_span_handle(result, context.expressions) + .into_other()) + } + } + Ok(()) + } + fn validate_subgroup_gather( + &mut self, + mode: &crate::GatherMode, + argument: Handle, + result: Handle, + context: &BlockContext, + ) -> Result<(), WithSpan> { + match *mode { + crate::GatherMode::BroadcastFirst => {} + crate::GatherMode::Broadcast(index) + | crate::GatherMode::Shuffle(index) + | crate::GatherMode::ShuffleDown(index) + | crate::GatherMode::ShuffleUp(index) + | crate::GatherMode::ShuffleXor(index) => { + let index_ty = context.resolve_type(index, &self.valid_expression_set)?; + match *index_ty { + crate::TypeInner::Scalar(crate::Scalar::U32) => {} + _ => { + log::error!( + "Subgroup gather index type {:?}, expected unsigned int", + index_ty + ); + return Err(SubgroupError::InvalidOperand(argument) + .with_span_handle(index, context.expressions) + .into_other()); + } + } + } + } + let argument_inner = context.resolve_type(argument, &self.valid_expression_set)?; + if !matches!(*argument_inner, + crate::TypeInner::Scalar ( scalar, .. ) | crate::TypeInner::Vector { scalar, .. } + if matches!(scalar.kind, crate::ScalarKind::Uint | crate::ScalarKind::Sint | crate::ScalarKind::Float) + ) { + log::error!("Subgroup gather operand type {:?}", argument_inner); + return Err(SubgroupError::InvalidOperand(argument) + .with_span_handle(argument, context.expressions) + .into_other()); + } + + self.emit_expression(result, context)?; + match context.expressions[result] { + crate::Expression::SubgroupOperationResult { ty } + if { &context.types[ty].inner == argument_inner } => {} + _ => { + return Err(SubgroupError::ResultTypeMismatch(result) + .with_span_handle(result, context.expressions) + .into_other()) + } + } + Ok(()) + } fn validate_block_impl( &mut self, @@ -613,8 +751,30 @@ impl super::Validator { stages &= super::ShaderStages::FRAGMENT; finished = true; } - S::Barrier(_) => { + S::Barrier(barrier) => { stages &= super::ShaderStages::COMPUTE; + if barrier.contains(crate::Barrier::SUB_GROUP) { + if !self.capabilities.contains( + super::Capabilities::SUBGROUP | super::Capabilities::SUBGROUP_BARRIER, + ) { + return Err(FunctionError::MissingCapability( + super::Capabilities::SUBGROUP + | super::Capabilities::SUBGROUP_BARRIER, + ) + .with_span_static(span, "missing capability for this operation")); + } + if !self + .subgroup_operations + .contains(super::SubgroupOperationSet::BASIC) + { + return Err(FunctionError::InvalidSubgroup( + SubgroupError::UnsupportedOperation( + super::SubgroupOperationSet::BASIC, + ), + ) + .with_span_static(span, "support for this operation is not present")); + } + } } S::Store { pointer, value } => { let mut current = pointer; @@ -904,6 +1064,86 @@ impl super::Validator { crate::RayQueryFunction::Terminate => {} } } + S::SubgroupBallot { result, predicate } => { + stages &= self.subgroup_stages; + if !self.capabilities.contains(super::Capabilities::SUBGROUP) { + return Err(FunctionError::MissingCapability( + super::Capabilities::SUBGROUP, + ) + .with_span_static(span, "missing capability for this operation")); + } + if !self + .subgroup_operations + .contains(super::SubgroupOperationSet::BALLOT) + { + return Err(FunctionError::InvalidSubgroup( + SubgroupError::UnsupportedOperation( + super::SubgroupOperationSet::BALLOT, + ), + ) + .with_span_static(span, "support for this operation is not present")); + } + if let Some(predicate) = predicate { + let predicate_inner = + context.resolve_type(predicate, &self.valid_expression_set)?; + if !matches!( + *predicate_inner, + crate::TypeInner::Scalar(crate::Scalar::BOOL,) + ) { + log::error!( + "Subgroup ballot predicate type {:?} expected bool", + predicate_inner + ); + return Err(SubgroupError::InvalidOperand(predicate) + .with_span_handle(predicate, context.expressions) + .into_other()); + } + } + self.emit_expression(result, context)?; + } + S::SubgroupCollectiveOperation { + ref op, + ref collective_op, + argument, + result, + } => { + stages &= self.subgroup_stages; + if !self.capabilities.contains(super::Capabilities::SUBGROUP) { + return Err(FunctionError::MissingCapability( + super::Capabilities::SUBGROUP, + ) + .with_span_static(span, "missing capability for this operation")); + } + let operation = op.required_operations(); + if !self.subgroup_operations.contains(operation) { + return Err(FunctionError::InvalidSubgroup( + SubgroupError::UnsupportedOperation(operation), + ) + .with_span_static(span, "support for this operation is not present")); + } + self.validate_subgroup_operation(op, collective_op, argument, result, context)?; + } + S::SubgroupGather { + ref mode, + argument, + result, + } => { + stages &= self.subgroup_stages; + if !self.capabilities.contains(super::Capabilities::SUBGROUP) { + return Err(FunctionError::MissingCapability( + super::Capabilities::SUBGROUP, + ) + .with_span_static(span, "missing capability for this operation")); + } + let operation = mode.required_operations(); + if !self.subgroup_operations.contains(operation) { + return Err(FunctionError::InvalidSubgroup( + SubgroupError::UnsupportedOperation(operation), + ) + .with_span_static(span, "support for this operation is not present")); + } + self.validate_subgroup_gather(mode, argument, result, context)?; + } } } Ok(BlockInfo { stages, finished }) diff --git a/third_party/rust/naga/src/valid/handles.rs b/third_party/rust/naga/src/valid/handles.rs index 5d3087a28fd7..8f7820405525 100644 --- a/third_party/rust/naga/src/valid/handles.rs +++ b/third_party/rust/naga/src/valid/handles.rs @@ -420,6 +420,8 @@ impl super::Validator { } crate::Expression::AtomicResult { .. } | crate::Expression::RayQueryProceedResult + | crate::Expression::SubgroupBallotResult + | crate::Expression::SubgroupOperationResult { .. } | crate::Expression::WorkGroupUniformLoadResult { .. } => (), crate::Expression::ArrayLength(array) => { handle.check_dep(array)?; @@ -565,6 +567,38 @@ impl super::Validator { } Ok(()) } + crate::Statement::SubgroupBallot { result, predicate } => { + validate_expr_opt(predicate)?; + validate_expr(result)?; + Ok(()) + } + crate::Statement::SubgroupCollectiveOperation { + op: _, + collective_op: _, + argument, + result, + } => { + validate_expr(argument)?; + validate_expr(result)?; + Ok(()) + } + crate::Statement::SubgroupGather { + mode, + argument, + result, + } => { + validate_expr(argument)?; + match mode { + crate::GatherMode::BroadcastFirst => {} + crate::GatherMode::Broadcast(index) + | crate::GatherMode::Shuffle(index) + | crate::GatherMode::ShuffleDown(index) + | crate::GatherMode::ShuffleUp(index) + | crate::GatherMode::ShuffleXor(index) => validate_expr(index)?, + } + validate_expr(result)?; + Ok(()) + } crate::Statement::Break | crate::Statement::Continue | crate::Statement::Kill diff --git a/third_party/rust/naga/src/valid/interface.rs b/third_party/rust/naga/src/valid/interface.rs index 2435b34c29d4..db890ddbac2d 100644 --- a/third_party/rust/naga/src/valid/interface.rs +++ b/third_party/rust/naga/src/valid/interface.rs @@ -77,6 +77,8 @@ pub enum VaryingError { location: u32, attribute: &'static str, }, + #[error("Workgroup size is multi dimensional, @builtin(subgroup_id) and @builtin(subgroup_invocation_id) are not supported.")] + InvalidMultiDimensionalSubgroupBuiltIn, } #[derive(Clone, Debug, thiserror::Error)] @@ -140,6 +142,7 @@ struct VaryingContext<'a> { impl VaryingContext<'_> { fn validate_impl( &mut self, + ep: &crate::EntryPoint, ty: Handle, binding: &crate::Binding, ) -> Result<(), VaryingError> { @@ -167,12 +170,24 @@ impl VaryingContext<'_> { Bi::PrimitiveIndex => Capabilities::PRIMITIVE_INDEX, Bi::ViewIndex => Capabilities::MULTIVIEW, Bi::SampleIndex => Capabilities::MULTISAMPLED_SHADING, + Bi::NumSubgroups + | Bi::SubgroupId + | Bi::SubgroupSize + | Bi::SubgroupInvocationId => Capabilities::SUBGROUP, _ => Capabilities::empty(), }; if !self.capabilities.contains(required) { return Err(VaryingError::UnsupportedCapability(required)); } + if matches!( + built_in, + crate::BuiltIn::SubgroupId | crate::BuiltIn::SubgroupInvocationId + ) && ep.workgroup_size[1..].iter().any(|&s| s > 1) + { + return Err(VaryingError::InvalidMultiDimensionalSubgroupBuiltIn); + } + let (visible, type_good) = match built_in { Bi::BaseInstance | Bi::BaseVertex | Bi::InstanceIndex | Bi::VertexIndex => ( self.stage == St::Vertex && !self.output, @@ -254,6 +269,17 @@ impl VaryingContext<'_> { scalar: crate::Scalar::U32, }, ), + Bi::NumSubgroups | Bi::SubgroupId => ( + self.stage == St::Compute && !self.output, + *ty_inner == Ti::Scalar(crate::Scalar::U32), + ), + Bi::SubgroupSize | Bi::SubgroupInvocationId => ( + match self.stage { + St::Compute | St::Fragment => !self.output, + St::Vertex => false, + }, + *ty_inner == Ti::Scalar(crate::Scalar::U32), + ), }; if !visible { @@ -354,13 +380,14 @@ impl VaryingContext<'_> { fn validate( &mut self, + ep: &crate::EntryPoint, ty: Handle, binding: Option<&crate::Binding>, ) -> Result<(), WithSpan> { let span_context = self.types.get_span_context(ty); match binding { Some(binding) => self - .validate_impl(ty, binding) + .validate_impl(ep, ty, binding) .map_err(|e| e.with_span_context(span_context)), None => { match self.types[ty].inner { @@ -377,7 +404,7 @@ impl VaryingContext<'_> { } } Some(ref binding) => self - .validate_impl(member.ty, binding) + .validate_impl(ep, member.ty, binding) .map_err(|e| e.with_span_context(span_context))?, } } @@ -609,7 +636,7 @@ impl super::Validator { capabilities: self.capabilities, flags: self.flags, }; - ctx.validate(fa.ty, fa.binding.as_ref()) + ctx.validate(ep, fa.ty, fa.binding.as_ref()) .map_err_inner(|e| EntryPointError::Argument(index as u32, e).with_span())?; } @@ -627,7 +654,7 @@ impl super::Validator { capabilities: self.capabilities, flags: self.flags, }; - ctx.validate(fr.ty, fr.binding.as_ref()) + ctx.validate(ep, fr.ty, fr.binding.as_ref()) .map_err_inner(|e| EntryPointError::Result(e).with_span())?; if ctx.second_blend_source { // Only the first location may be used when dual source blending diff --git a/third_party/rust/naga/src/valid/mod.rs b/third_party/rust/naga/src/valid/mod.rs index f34c0f6f1ac6..a0057f39acfd 100644 --- a/third_party/rust/naga/src/valid/mod.rs +++ b/third_party/rust/naga/src/valid/mod.rs @@ -77,7 +77,7 @@ bitflags::bitflags! { #[cfg_attr(feature = "serialize", derive(serde::Serialize))] #[cfg_attr(feature = "deserialize", derive(serde::Deserialize))] #[derive(Clone, Copy, Debug, Eq, PartialEq)] - pub struct Capabilities: u16 { + pub struct Capabilities: u32 { /// Support for [`AddressSpace:PushConstant`]. const PUSH_CONSTANT = 0x1; /// Float values with width = 8. @@ -110,6 +110,10 @@ bitflags::bitflags! { const CUBE_ARRAY_TEXTURES = 0x4000; /// Support for 64-bit signed and unsigned integers. const SHADER_INT64 = 0x8000; + /// Support for subgroup operations. + const SUBGROUP = 0x10000; + /// Support for subgroup barriers. + const SUBGROUP_BARRIER = 0x20000; } } @@ -119,6 +123,57 @@ impl Default for Capabilities { } } +bitflags::bitflags! { + /// Supported subgroup operations + #[cfg_attr(feature = "serialize", derive(serde::Serialize))] + #[cfg_attr(feature = "deserialize", derive(serde::Deserialize))] + #[derive(Clone, Copy, Debug, Default, Eq, PartialEq)] + pub struct SubgroupOperationSet: u8 { + /// Elect, Barrier + const BASIC = 1 << 0; + /// Any, All + const VOTE = 1 << 1; + /// reductions, scans + const ARITHMETIC = 1 << 2; + /// ballot, broadcast + const BALLOT = 1 << 3; + /// shuffle, shuffle xor + const SHUFFLE = 1 << 4; + /// shuffle up, down + const SHUFFLE_RELATIVE = 1 << 5; + // We don't support these operations yet + // /// Clustered + // const CLUSTERED = 1 << 6; + // /// Quad supported + // const QUAD_FRAGMENT_COMPUTE = 1 << 7; + // /// Quad supported in all stages + // const QUAD_ALL_STAGES = 1 << 8; + } +} + +impl super::SubgroupOperation { + const fn required_operations(&self) -> SubgroupOperationSet { + use SubgroupOperationSet as S; + match *self { + Self::All | Self::Any => S::VOTE, + Self::Add | Self::Mul | Self::Min | Self::Max | Self::And | Self::Or | Self::Xor => { + S::ARITHMETIC + } + } + } +} + +impl super::GatherMode { + const fn required_operations(&self) -> SubgroupOperationSet { + use SubgroupOperationSet as S; + match *self { + Self::BroadcastFirst | Self::Broadcast(_) => S::BALLOT, + Self::Shuffle(_) | Self::ShuffleXor(_) => S::SHUFFLE, + Self::ShuffleUp(_) | Self::ShuffleDown(_) => S::SHUFFLE_RELATIVE, + } + } +} + bitflags::bitflags! { /// Validation flags. #[cfg_attr(feature = "serialize", derive(serde::Serialize))] @@ -166,6 +221,8 @@ impl ops::Index> for ModuleInfo { pub struct Validator { flags: ValidationFlags, capabilities: Capabilities, + subgroup_stages: ShaderStages, + subgroup_operations: SubgroupOperationSet, types: Vec, layouter: Layouter, location_mask: BitSet, @@ -317,6 +374,8 @@ impl Validator { Validator { flags, capabilities, + subgroup_stages: ShaderStages::empty(), + subgroup_operations: SubgroupOperationSet::empty(), types: Vec::new(), layouter: Layouter::default(), location_mask: BitSet::new(), @@ -329,6 +388,16 @@ impl Validator { } } + pub fn subgroup_stages(&mut self, stages: ShaderStages) -> &mut Self { + self.subgroup_stages = stages; + self + } + + pub fn subgroup_operations(&mut self, operations: SubgroupOperationSet) -> &mut Self { + self.subgroup_operations = operations; + self + } + /// Reset the validator internals pub fn reset(&mut self) { self.types.clear(); diff --git a/third_party/rust/naga/src/valid/type.rs b/third_party/rust/naga/src/valid/type.rs index 03e87fd99bfb..f5b9856074cb 100644 --- a/third_party/rust/naga/src/valid/type.rs +++ b/third_party/rust/naga/src/valid/type.rs @@ -328,7 +328,6 @@ impl super::Validator { TypeFlags::DATA | TypeFlags::SIZED | TypeFlags::COPY - | TypeFlags::HOST_SHAREABLE | TypeFlags::ARGUMENT | TypeFlags::CONSTRUCTIBLE | shareable, diff --git a/third_party/rust/serde/.cargo-checksum.json b/third_party/rust/serde/.cargo-checksum.json index d55068bd63dd..65bca8af82a4 100644 --- a/third_party/rust/serde/.cargo-checksum.json +++ b/third_party/rust/serde/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"f03b626efae73a6dd42f07d722dad2da3a4add51f4e653e30a6d696853bab209","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"731c044fc5f98b37a89e9049c9214267db98763309cb63146b45c029640f82a3","build.rs":"f9ba30324b9ce085c903595fb55a5293f8c2348ff36bfe870521b935ae6d105c","crates-io.md":"56e988ac4944c45f5bf5051e3827892ed8fb817853d99d9df1fff6621108e270","src/de/format.rs":"c85071b016df643b161859682d21ce34fa0ebf2a3bdbeeea69859da48f5d934f","src/de/ignored_any.rs":"6480f2b2a83dc4764d01b2eec7309729eef2492eede2e5ee98d23a60b05198eb","src/de/impls.rs":"2857d734176a0b78a41c9358354b0b0b83c6b2d948590be072d98606a8cae9d6","src/de/mod.rs":"fc34da49f692803d2c2f131322d9b48ad8e4f39ed10b2b304d6193ab09d621fb","src/de/seed.rs":"045d890712a04eb33ffc5a021e5d948a63c89402b8ffeea749df2171b7484f8f","src/de/size_hint.rs":"fff83dc39d30e75e8e611991f9c5399188a1aad23a6462dbca2c8b62655cfedb","src/de/value.rs":"0fd511a288c20a1b768718f4baadf9c7d4146d276af6a71ba1d0f7679b28644a","src/integer128.rs":"29ef30b7d94507b34807090e68173767cdc7aff62edccd38affe69e75338dddc","src/lib.rs":"638b231a280519f1861ea5f1bfbe97e2394b2f7662a9701b8e57ed95093dd298","src/macros.rs":"e3486ef4a9a4ed1b27234aa1817ccb25ec0eb026ffc95e2c71c7b917f1f45629","src/private/de.rs":"6557a124fdaf61f9c7cd80163e40f4a453354e45b63a4eb55dafdfe0159f6881","src/private/doc.rs":"9ad740e9ea2eedf861b77116eda9a6fb74bc8553541cd17d1bc5791a3ef3271a","src/private/mod.rs":"b8f0c348621d91dd9da3db83d8877e70bc61ad0a2dc2d6fb57c6fc2c2cbafa26","src/private/ser.rs":"656613691bd8d40cb70a52d4ebe3ee96a993c8a1292d50822d9ca5bdad84426b","src/ser/fmt.rs":"77a5583e5c227ea1982b097ed6378af5c899d43761d71e33440262fd35944695","src/ser/impls.rs":"850619164b399c37cd373d24f5a2c83453f40b34bb978c5722d2c1ae226775b5","src/ser/impossible.rs":"e11b37689ec1395378d546fce74221ca9046d0761744301f12029102fd07e30e","src/ser/mod.rs":"a7fd082203d63cbe4f0fe86d9be16bf4f3b2444653dac6bb61d82e0f4f6b4214","src/std_error.rs":"25a07149e2e468747ffa5a58051c7f93d7b3c0fa0372f012a96c97ec8ab03b97"},"package":"3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"} \ No newline at end of file +{"files":{"Cargo.toml":"fcf211f4e710da1375e944a42621a8cd3de8d683db3e464ab570652216015d87","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"731c044fc5f98b37a89e9049c9214267db98763309cb63146b45c029640f82a3","build.rs":"56b4f43d4061c03fbdd4f6325f30439686b12679bace304223d30c03632a925e","crates-io.md":"56e988ac4944c45f5bf5051e3827892ed8fb817853d99d9df1fff6621108e270","src/de/format.rs":"c85071b016df643b161859682d21ce34fa0ebf2a3bdbeeea69859da48f5d934f","src/de/ignored_any.rs":"6480f2b2a83dc4764d01b2eec7309729eef2492eede2e5ee98d23a60b05198eb","src/de/impls.rs":"cd2781405d8f4568701a701e6b9946e5956eb201571118c8a49038928477779a","src/de/mod.rs":"2be26b699feb8cc0c7f573d58fc11bb92d0b7bd1063bf8fcbd0e71d60f53c99a","src/de/seed.rs":"045d890712a04eb33ffc5a021e5d948a63c89402b8ffeea749df2171b7484f8f","src/de/size_hint.rs":"fff83dc39d30e75e8e611991f9c5399188a1aad23a6462dbca2c8b62655cfedb","src/de/value.rs":"0fd511a288c20a1b768718f4baadf9c7d4146d276af6a71ba1d0f7679b28644a","src/integer128.rs":"29ef30b7d94507b34807090e68173767cdc7aff62edccd38affe69e75338dddc","src/lib.rs":"0e4c06f18a0f2e46d60f54f463e906bf1ba1330ef9820a12173fd28a91b9fcde","src/macros.rs":"e3486ef4a9a4ed1b27234aa1817ccb25ec0eb026ffc95e2c71c7b917f1f45629","src/private/de.rs":"9255ecf2d5c52f0f52b4e0dbf85bdd8c140bc2c1ac96086ee395589e0521aeb4","src/private/doc.rs":"b222decb40321190155209e1b8a5a52e3adfaa470047e379e664b71e0320655a","src/private/mod.rs":"b8f0c348621d91dd9da3db83d8877e70bc61ad0a2dc2d6fb57c6fc2c2cbafa26","src/private/ser.rs":"73577607e779e1b42713c51b9bc7136f99daccf473b4a641c99ceebe46708d47","src/ser/fmt.rs":"d1cfd9623605413e45a23ef778d97f0ac4da4adaed23739f1f9d7414b30e384b","src/ser/impls.rs":"0eebc159f7d3962c46c323e456afb679747ff57563e796c5fd92c64ed074ae70","src/ser/impossible.rs":"5c325da8e0370ab22abe1e15d8af1dc7a1707b127508f61e720cd7f0caa80593","src/ser/mod.rs":"a92d4ce0a6c68eb22a24a61574a5d2e9b0b463b284ff08e62298b8f7ae1a7464","src/std_error.rs":"25a07149e2e468747ffa5a58051c7f93d7b3c0fa0372f012a96c97ec8ab03b97"},"package":"9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc"} \ No newline at end of file diff --git a/third_party/rust/serde/Cargo.toml b/third_party/rust/serde/Cargo.toml index 6ba68688aca5..b6f335bafd52 100644 --- a/third_party/rust/serde/Cargo.toml +++ b/third_party/rust/serde/Cargo.toml @@ -13,7 +13,7 @@ edition = "2018" rust-version = "1.31" name = "serde" -version = "1.0.197" +version = "1.0.198" authors = [ "Erick Tryzelaar ", "David Tolnay ", @@ -74,4 +74,4 @@ std = [] unstable = [] [target."cfg(any())".dependencies.serde_derive] -version = "=1.0.197" +version = "=1.0.198" diff --git a/third_party/rust/serde/build.rs b/third_party/rust/serde/build.rs index fe5486a7a531..0074df63f4ea 100644 --- a/third_party/rust/serde/build.rs +++ b/third_party/rust/serde/build.rs @@ -64,6 +64,12 @@ fn main() { if minor < 64 { println!("cargo:rustc-cfg=no_core_cstr"); } + + // Support for core::num::Saturating and std::num::Saturating stabilized in Rust 1.74 + // https://blog.rust-lang.org/2023/11/16/Rust-1.74.0.html#stabilized-apis + if minor < 74 { + println!("cargo:rustc-cfg=no_core_num_saturating"); + } } fn rustc_minor_version() -> Option { diff --git a/third_party/rust/serde/src/de/impls.rs b/third_party/rust/serde/src/de/impls.rs index 413c997afdf6..140878aec623 100644 --- a/third_party/rust/serde/src/de/impls.rs +++ b/third_party/rust/serde/src/de/impls.rs @@ -104,6 +104,28 @@ macro_rules! impl_deserialize_num { deserializer.$deserialize(NonZeroVisitor) } } + + #[cfg(not(no_core_num_saturating))] + impl<'de> Deserialize<'de> for Saturating<$primitive> { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + struct SaturatingVisitor; + + impl<'de> Visitor<'de> for SaturatingVisitor { + type Value = Saturating<$primitive>; + + fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result { + formatter.write_str("integer with support for saturating semantics") + } + + $($($method!(saturating $primitive $val : $visit);)*)* + } + + deserializer.$deserialize(SaturatingVisitor) + } + } }; ($primitive:ident, $deserialize:ident $($method:ident!($($val:ident : $visit:ident)*);)*) => { @@ -154,6 +176,15 @@ macro_rules! num_self { } } }; + + (saturating $primitive:ident $ty:ident : $visit:ident) => { + fn $visit(self, v: $ty) -> Result + where + E: Error, + { + Ok(Saturating(v)) + } + }; } macro_rules! num_as_self { @@ -179,6 +210,15 @@ macro_rules! num_as_self { } } }; + + (saturating $primitive:ident $ty:ident : $visit:ident) => { + fn $visit(self, v: $ty) -> Result + where + E: Error, + { + Ok(Saturating(v as $primitive)) + } + }; } macro_rules! num_as_copysign_self { @@ -235,6 +275,21 @@ macro_rules! int_to_int { Err(Error::invalid_value(Unexpected::Signed(v as i64), &self)) } }; + + (saturating $primitive:ident $ty:ident : $visit:ident) => { + fn $visit(self, v: $ty) -> Result + where + E: Error, + { + if (v as i64) < $primitive::MIN as i64 { + Ok(Saturating($primitive::MIN)) + } else if ($primitive::MAX as i64) < v as i64 { + Ok(Saturating($primitive::MAX)) + } else { + Ok(Saturating(v as $primitive)) + } + } + }; } macro_rules! int_to_uint { @@ -265,6 +320,21 @@ macro_rules! int_to_uint { Err(Error::invalid_value(Unexpected::Signed(v as i64), &self)) } }; + + (saturating $primitive:ident $ty:ident : $visit:ident) => { + fn $visit(self, v: $ty) -> Result + where + E: Error, + { + if v < 0 { + Ok(Saturating(0)) + } else if ($primitive::MAX as u64) < v as u64 { + Ok(Saturating($primitive::MAX)) + } else { + Ok(Saturating(v as $primitive)) + } + } + }; } macro_rules! uint_to_self { @@ -295,6 +365,19 @@ macro_rules! uint_to_self { Err(Error::invalid_value(Unexpected::Unsigned(v as u64), &self)) } }; + + (saturating $primitive:ident $ty:ident : $visit:ident) => { + fn $visit(self, v: $ty) -> Result + where + E: Error, + { + if v as u64 <= $primitive::MAX as u64 { + Ok(Saturating(v as $primitive)) + } else { + Ok(Saturating($primitive::MAX)) + } + } + }; } impl_deserialize_num! { @@ -427,6 +510,21 @@ macro_rules! num_128 { } } }; + + (saturating $primitive:ident $ty:ident : $visit:ident) => { + fn $visit(self, v: $ty) -> Result + where + E: Error, + { + if (v as i128) < $primitive::MIN as i128 { + Ok(Saturating($primitive::MIN)) + } else if ($primitive::MAX as u128) < v as u128 { + Ok(Saturating($primitive::MAX)) + } else { + Ok(Saturating(v as $primitive)) + } + } + }; } impl_deserialize_num! { @@ -852,7 +950,10 @@ struct PhantomDataVisitor { marker: PhantomData, } -impl<'de, T: ?Sized> Visitor<'de> for PhantomDataVisitor { +impl<'de, T> Visitor<'de> for PhantomDataVisitor +where + T: ?Sized, +{ type Value = PhantomData; fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result { @@ -868,7 +969,10 @@ impl<'de, T: ?Sized> Visitor<'de> for PhantomDataVisitor { } } -impl<'de, T: ?Sized> Deserialize<'de> for PhantomData { +impl<'de, T> Deserialize<'de> for PhantomData +where + T: ?Sized, +{ fn deserialize(deserializer: D) -> Result where D: Deserializer<'de>, @@ -1877,9 +1981,9 @@ forwarded_impl! { #[cfg(any(feature = "std", feature = "alloc"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "alloc"))))] -impl<'de, 'a, T: ?Sized> Deserialize<'de> for Cow<'a, T> +impl<'de, 'a, T> Deserialize<'de> for Cow<'a, T> where - T: ToOwned, + T: ?Sized + ToOwned, T::Owned: Deserialize<'de>, { #[inline] @@ -1902,7 +2006,7 @@ where doc_cfg, doc(cfg(all(feature = "rc", any(feature = "std", feature = "alloc")))) )] -impl<'de, T: ?Sized> Deserialize<'de> for RcWeak +impl<'de, T> Deserialize<'de> for RcWeak where T: Deserialize<'de>, { @@ -1924,7 +2028,7 @@ where doc_cfg, doc(cfg(all(feature = "rc", any(feature = "std", feature = "alloc")))) )] -impl<'de, T: ?Sized> Deserialize<'de> for ArcWeak +impl<'de, T> Deserialize<'de> for ArcWeak where T: Deserialize<'de>, { @@ -1945,8 +2049,9 @@ macro_rules! box_forwarded_impl { $t:ident ) => { $(#[$attr])* - impl<'de, T: ?Sized> Deserialize<'de> for $t + impl<'de, T> Deserialize<'de> for $t where + T: ?Sized, Box: Deserialize<'de>, { fn deserialize(deserializer: D) -> Result diff --git a/third_party/rust/serde/src/de/mod.rs b/third_party/rust/serde/src/de/mod.rs index 1924fe3d88c9..4c5a5f9b7809 100644 --- a/third_party/rust/serde/src/de/mod.rs +++ b/third_party/rust/serde/src/de/mod.rs @@ -1735,9 +1735,9 @@ pub trait SeqAccess<'de> { } } -impl<'de, 'a, A: ?Sized> SeqAccess<'de> for &'a mut A +impl<'de, 'a, A> SeqAccess<'de> for &'a mut A where - A: SeqAccess<'de>, + A: ?Sized + SeqAccess<'de>, { type Error = A::Error; @@ -1888,9 +1888,9 @@ pub trait MapAccess<'de> { } } -impl<'de, 'a, A: ?Sized> MapAccess<'de> for &'a mut A +impl<'de, 'a, A> MapAccess<'de> for &'a mut A where - A: MapAccess<'de>, + A: ?Sized + MapAccess<'de>, { type Error = A::Error; diff --git a/third_party/rust/serde/src/lib.rs b/third_party/rust/serde/src/lib.rs index 5cf44c1c18df..fefbf8fda252 100644 --- a/third_party/rust/serde/src/lib.rs +++ b/third_party/rust/serde/src/lib.rs @@ -95,7 +95,7 @@ //////////////////////////////////////////////////////////////////////////////// // Serde types in rustdoc of other crates get linked to here. -#![doc(html_root_url = "https://docs.rs/serde/1.0.197")] +#![doc(html_root_url = "https://docs.rs/serde/1.0.198")] // Support using Serde without the standard library! #![cfg_attr(not(feature = "std"), no_std)] // Show which crate feature enables conditionally compiled APIs in documentation. @@ -274,6 +274,9 @@ mod lib { pub use std::sync::atomic::{AtomicI64, AtomicU64}; #[cfg(all(feature = "std", not(no_target_has_atomic), target_has_atomic = "ptr"))] pub use std::sync::atomic::{AtomicIsize, AtomicUsize}; + + #[cfg(not(no_core_num_saturating))] + pub use self::core::num::Saturating; } // None of this crate's error handling needs the `From::from` error conversion diff --git a/third_party/rust/serde/src/private/de.rs b/third_party/rust/serde/src/private/de.rs index 883e6909c1f1..c402d2c66aac 100644 --- a/third_party/rust/serde/src/private/de.rs +++ b/third_party/rust/serde/src/private/de.rs @@ -313,6 +313,8 @@ mod content { } } + /// Used to capture data in [`Content`] from other deserializers. + /// Cannot capture externally tagged enums, `i128` and `u128`. struct ContentVisitor<'de> { value: PhantomData>, } @@ -528,6 +530,8 @@ mod content { Content(Content<'de>), } + /// Serves as a seed for deserializing a key of internally tagged enum. + /// Cannot capture externally tagged enums, `i128` and `u128`. struct TagOrContentVisitor<'de> { name: &'static str, value: PhantomData>, @@ -814,6 +818,9 @@ mod content { /// Used by generated code to deserialize an internally tagged enum. /// + /// Captures map or sequence from the original deserializer and searches + /// a tag in it (in case of sequence, tag is the first element of sequence). + /// /// Not public API. pub struct TaggedContentVisitor { tag_name: &'static str, diff --git a/third_party/rust/serde/src/private/doc.rs b/third_party/rust/serde/src/private/doc.rs index 1b18fe6b41a2..1f17c8db534c 100644 --- a/third_party/rust/serde/src/private/doc.rs +++ b/third_party/rust/serde/src/private/doc.rs @@ -56,7 +56,10 @@ macro_rules! __serialize_unimplemented { #[macro_export] macro_rules! __serialize_unimplemented_method { ($func:ident $(<$t:ident>)* ($($arg:ty),*) -> $ret:ident) => { - fn $func $(<$t: ?Sized + $crate::Serialize>)* (self $(, _: $arg)*) -> $crate::__private::Result { + fn $func $(<$t>)* (self $(, _: $arg)*) -> $crate::__private::Result + where + $($t: ?Sized + $crate::Serialize,)* + { unimplemented!() } }; diff --git a/third_party/rust/serde/src/private/ser.rs b/third_party/rust/serde/src/private/ser.rs index 50bcb251e308..40cc6cbdb7df 100644 --- a/third_party/rust/serde/src/private/ser.rs +++ b/third_party/rust/serde/src/private/ser.rs @@ -174,9 +174,9 @@ where Err(self.bad_type(Unsupported::Optional)) } - fn serialize_some(self, _: &T) -> Result + fn serialize_some(self, _: &T) -> Result where - T: Serialize, + T: ?Sized + Serialize, { Err(self.bad_type(Unsupported::Optional)) } @@ -205,18 +205,18 @@ where map.end() } - fn serialize_newtype_struct( + fn serialize_newtype_struct( self, _: &'static str, value: &T, ) -> Result where - T: Serialize, + T: ?Sized + Serialize, { value.serialize(self) } - fn serialize_newtype_variant( + fn serialize_newtype_variant( self, _: &'static str, _: u32, @@ -224,7 +224,7 @@ where inner_value: &T, ) -> Result where - T: Serialize, + T: ?Sized + Serialize, { let mut map = tri!(self.delegate.serialize_map(Some(2))); tri!(map.serialize_entry(self.tag, self.variant_name)); @@ -327,9 +327,9 @@ where } #[cfg(not(any(feature = "std", feature = "alloc")))] - fn collect_str(self, _: &T) -> Result + fn collect_str(self, _: &T) -> Result where - T: Display, + T: ?Sized + Display, { Err(self.bad_type(Unsupported::String)) } @@ -364,9 +364,9 @@ mod content { type Ok = M::Ok; type Error = M::Error; - fn serialize_field(&mut self, value: &T) -> Result<(), M::Error> + fn serialize_field(&mut self, value: &T) -> Result<(), M::Error> where - T: Serialize, + T: ?Sized + Serialize, { let value = tri!(value.serialize(ContentSerializer::::new())); self.fields.push(value); @@ -404,13 +404,9 @@ mod content { type Ok = M::Ok; type Error = M::Error; - fn serialize_field( - &mut self, - key: &'static str, - value: &T, - ) -> Result<(), M::Error> + fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), M::Error> where - T: Serialize, + T: ?Sized + Serialize, { let value = tri!(value.serialize(ContentSerializer::::new())); self.fields.push((key, value)); @@ -635,9 +631,9 @@ mod content { Ok(Content::None) } - fn serialize_some(self, value: &T) -> Result + fn serialize_some(self, value: &T) -> Result where - T: Serialize, + T: ?Sized + Serialize, { Ok(Content::Some(Box::new(tri!(value.serialize(self))))) } @@ -659,13 +655,9 @@ mod content { Ok(Content::UnitVariant(name, variant_index, variant)) } - fn serialize_newtype_struct( - self, - name: &'static str, - value: &T, - ) -> Result + fn serialize_newtype_struct(self, name: &'static str, value: &T) -> Result where - T: Serialize, + T: ?Sized + Serialize, { Ok(Content::NewtypeStruct( name, @@ -673,7 +665,7 @@ mod content { )) } - fn serialize_newtype_variant( + fn serialize_newtype_variant( self, name: &'static str, variant_index: u32, @@ -681,7 +673,7 @@ mod content { value: &T, ) -> Result where - T: Serialize, + T: ?Sized + Serialize, { Ok(Content::NewtypeVariant( name, @@ -782,9 +774,9 @@ mod content { type Ok = Content; type Error = E; - fn serialize_element(&mut self, value: &T) -> Result<(), E> + fn serialize_element(&mut self, value: &T) -> Result<(), E> where - T: Serialize, + T: ?Sized + Serialize, { let value = tri!(value.serialize(ContentSerializer::::new())); self.elements.push(value); @@ -808,9 +800,9 @@ mod content { type Ok = Content; type Error = E; - fn serialize_element(&mut self, value: &T) -> Result<(), E> + fn serialize_element(&mut self, value: &T) -> Result<(), E> where - T: Serialize, + T: ?Sized + Serialize, { let value = tri!(value.serialize(ContentSerializer::::new())); self.elements.push(value); @@ -835,9 +827,9 @@ mod content { type Ok = Content; type Error = E; - fn serialize_field(&mut self, value: &T) -> Result<(), E> + fn serialize_field(&mut self, value: &T) -> Result<(), E> where - T: Serialize, + T: ?Sized + Serialize, { let value = tri!(value.serialize(ContentSerializer::::new())); self.fields.push(value); @@ -864,9 +856,9 @@ mod content { type Ok = Content; type Error = E; - fn serialize_field(&mut self, value: &T) -> Result<(), E> + fn serialize_field(&mut self, value: &T) -> Result<(), E> where - T: Serialize, + T: ?Sized + Serialize, { let value = tri!(value.serialize(ContentSerializer::::new())); self.fields.push(value); @@ -896,18 +888,18 @@ mod content { type Ok = Content; type Error = E; - fn serialize_key(&mut self, key: &T) -> Result<(), E> + fn serialize_key(&mut self, key: &T) -> Result<(), E> where - T: Serialize, + T: ?Sized + Serialize, { let key = tri!(key.serialize(ContentSerializer::::new())); self.key = Some(key); Ok(()) } - fn serialize_value(&mut self, value: &T) -> Result<(), E> + fn serialize_value(&mut self, value: &T) -> Result<(), E> where - T: Serialize, + T: ?Sized + Serialize, { let key = self .key @@ -922,10 +914,10 @@ mod content { Ok(Content::Map(self.entries)) } - fn serialize_entry(&mut self, key: &K, value: &V) -> Result<(), E> + fn serialize_entry(&mut self, key: &K, value: &V) -> Result<(), E> where - K: Serialize, - V: Serialize, + K: ?Sized + Serialize, + V: ?Sized + Serialize, { let key = tri!(key.serialize(ContentSerializer::::new())); let value = tri!(value.serialize(ContentSerializer::::new())); @@ -947,9 +939,9 @@ mod content { type Ok = Content; type Error = E; - fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), E> + fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), E> where - T: Serialize, + T: ?Sized + Serialize, { let value = tri!(value.serialize(ContentSerializer::::new())); self.fields.push((key, value)); @@ -976,9 +968,9 @@ mod content { type Ok = Content; type Error = E; - fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), E> + fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), E> where - T: Serialize, + T: ?Sized + Serialize, { let value = tri!(value.serialize(ContentSerializer::::new())); self.fields.push((key, value)); @@ -1088,9 +1080,9 @@ where Ok(()) } - fn serialize_some(self, value: &T) -> Result + fn serialize_some(self, value: &T) -> Result where - T: Serialize, + T: ?Sized + Serialize, { value.serialize(self) } @@ -1112,18 +1104,18 @@ where Err(Self::bad_type(Unsupported::Enum)) } - fn serialize_newtype_struct( + fn serialize_newtype_struct( self, _: &'static str, value: &T, ) -> Result where - T: Serialize, + T: ?Sized + Serialize, { value.serialize(self) } - fn serialize_newtype_variant( + fn serialize_newtype_variant( self, _: &'static str, _: u32, @@ -1131,7 +1123,7 @@ where value: &T, ) -> Result where - T: Serialize, + T: ?Sized + Serialize, { tri!(self.0.serialize_key(variant)); self.0.serialize_value(value) @@ -1202,28 +1194,24 @@ where type Ok = (); type Error = M::Error; - fn serialize_key(&mut self, key: &T) -> Result<(), Self::Error> + fn serialize_key(&mut self, key: &T) -> Result<(), Self::Error> where - T: Serialize, + T: ?Sized + Serialize, { self.0.serialize_key(key) } - fn serialize_value(&mut self, value: &T) -> Result<(), Self::Error> + fn serialize_value(&mut self, value: &T) -> Result<(), Self::Error> where - T: Serialize, + T: ?Sized + Serialize, { self.0.serialize_value(value) } - fn serialize_entry( - &mut self, - key: &K, - value: &V, - ) -> Result<(), Self::Error> + fn serialize_entry(&mut self, key: &K, value: &V) -> Result<(), Self::Error> where - K: Serialize, - V: Serialize, + K: ?Sized + Serialize, + V: ?Sized + Serialize, { self.0.serialize_entry(key, value) } @@ -1244,13 +1232,9 @@ where type Ok = (); type Error = M::Error; - fn serialize_field( - &mut self, - key: &'static str, - value: &T, - ) -> Result<(), Self::Error> + fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error> where - T: Serialize, + T: ?Sized + Serialize, { self.0.serialize_entry(key, value) } @@ -1289,9 +1273,9 @@ where type Ok = (); type Error = M::Error; - fn serialize_field(&mut self, value: &T) -> Result<(), Self::Error> + fn serialize_field(&mut self, value: &T) -> Result<(), Self::Error> where - T: Serialize, + T: ?Sized + Serialize, { let value = tri!(value.serialize(ContentSerializer::::new())); self.fields.push(value); @@ -1335,13 +1319,9 @@ where type Ok = (); type Error = M::Error; - fn serialize_field( - &mut self, - key: &'static str, - value: &T, - ) -> Result<(), Self::Error> + fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error> where - T: Serialize, + T: ?Sized + Serialize, { let value = tri!(value.serialize(ContentSerializer::::new())); self.fields.push((key, value)); diff --git a/third_party/rust/serde/src/ser/fmt.rs b/third_party/rust/serde/src/ser/fmt.rs index 0650ab6f12ee..04684aded018 100644 --- a/third_party/rust/serde/src/ser/fmt.rs +++ b/third_party/rust/serde/src/ser/fmt.rs @@ -74,9 +74,9 @@ impl<'a, 'b> Serializer for &'a mut fmt::Formatter<'b> { Display::fmt(variant, self) } - fn serialize_newtype_struct(self, _name: &'static str, value: &T) -> fmt::Result + fn serialize_newtype_struct(self, _name: &'static str, value: &T) -> fmt::Result where - T: Serialize, + T: ?Sized + Serialize, { Serialize::serialize(value, self) } @@ -89,9 +89,9 @@ impl<'a, 'b> Serializer for &'a mut fmt::Formatter<'b> { Err(fmt::Error) } - fn serialize_some(self, _value: &T) -> fmt::Result + fn serialize_some(self, _value: &T) -> fmt::Result where - T: Serialize, + T: ?Sized + Serialize, { Err(fmt::Error) } @@ -100,7 +100,7 @@ impl<'a, 'b> Serializer for &'a mut fmt::Formatter<'b> { Err(fmt::Error) } - fn serialize_newtype_variant( + fn serialize_newtype_variant( self, _name: &'static str, _variant_index: u32, @@ -108,7 +108,7 @@ impl<'a, 'b> Serializer for &'a mut fmt::Formatter<'b> { _value: &T, ) -> fmt::Result where - T: Serialize, + T: ?Sized + Serialize, { Err(fmt::Error) } @@ -161,9 +161,9 @@ impl<'a, 'b> Serializer for &'a mut fmt::Formatter<'b> { Err(fmt::Error) } - fn collect_str(self, value: &T) -> fmt::Result + fn collect_str(self, value: &T) -> fmt::Result where - T: Display, + T: ?Sized + Display, { Display::fmt(value, self) } diff --git a/third_party/rust/serde/src/ser/impls.rs b/third_party/rust/serde/src/ser/impls.rs index 8c70634af0ef..ffc4c70f90f9 100644 --- a/third_party/rust/serde/src/ser/impls.rs +++ b/third_party/rust/serde/src/ser/impls.rs @@ -114,7 +114,10 @@ where //////////////////////////////////////////////////////////////////////////////// -impl Serialize for PhantomData { +impl Serialize for PhantomData +where + T: ?Sized, +{ #[inline] fn serialize(&self, serializer: S) -> Result where @@ -504,17 +507,17 @@ macro_rules! deref_impl { } deref_impl! { - <'a, T: ?Sized> Serialize for &'a T where T: Serialize + <'a, T> Serialize for &'a T where T: ?Sized + Serialize } deref_impl! { - <'a, T: ?Sized> Serialize for &'a mut T where T: Serialize + <'a, T> Serialize for &'a mut T where T: ?Sized + Serialize } deref_impl! { #[cfg(any(feature = "std", feature = "alloc"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "alloc"))))] - Serialize for Box where T: Serialize + Serialize for Box where T: ?Sized + Serialize } deref_impl! { @@ -528,7 +531,7 @@ deref_impl! { /// [`"rc"`]: https://serde.rs/feature-flags.html#-features-rc #[cfg(all(feature = "rc", any(feature = "std", feature = "alloc")))] #[cfg_attr(doc_cfg, doc(cfg(all(feature = "rc", any(feature = "std", feature = "alloc")))))] - Serialize for Rc where T: Serialize + Serialize for Rc where T: ?Sized + Serialize } deref_impl! { @@ -542,13 +545,13 @@ deref_impl! { /// [`"rc"`]: https://serde.rs/feature-flags.html#-features-rc #[cfg(all(feature = "rc", any(feature = "std", feature = "alloc")))] #[cfg_attr(doc_cfg, doc(cfg(all(feature = "rc", any(feature = "std", feature = "alloc")))))] - Serialize for Arc where T: Serialize + Serialize for Arc where T: ?Sized + Serialize } deref_impl! { #[cfg(any(feature = "std", feature = "alloc"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "alloc"))))] - <'a, T: ?Sized> Serialize for Cow<'a, T> where T: Serialize + ToOwned + <'a, T> Serialize for Cow<'a, T> where T: ?Sized + Serialize + ToOwned } //////////////////////////////////////////////////////////////////////////////// @@ -561,9 +564,9 @@ deref_impl! { doc_cfg, doc(cfg(all(feature = "rc", any(feature = "std", feature = "alloc")))) )] -impl Serialize for RcWeak +impl Serialize for RcWeak where - T: Serialize, + T: ?Sized + Serialize, { fn serialize(&self, serializer: S) -> Result where @@ -581,9 +584,9 @@ where doc_cfg, doc(cfg(all(feature = "rc", any(feature = "std", feature = "alloc")))) )] -impl Serialize for ArcWeak +impl Serialize for ArcWeak where - T: Serialize, + T: ?Sized + Serialize, { fn serialize(&self, serializer: S) -> Result where @@ -641,9 +644,9 @@ where } } -impl Serialize for RefCell +impl Serialize for RefCell where - T: Serialize, + T: ?Sized + Serialize, { fn serialize(&self, serializer: S) -> Result where @@ -658,9 +661,9 @@ where #[cfg(feature = "std")] #[cfg_attr(doc_cfg, doc(cfg(feature = "std")))] -impl Serialize for Mutex +impl Serialize for Mutex where - T: Serialize, + T: ?Sized + Serialize, { fn serialize(&self, serializer: S) -> Result where @@ -675,9 +678,9 @@ where #[cfg(feature = "std")] #[cfg_attr(doc_cfg, doc(cfg(feature = "std")))] -impl Serialize for RwLock +impl Serialize for RwLock where - T: Serialize, + T: ?Sized + Serialize, { fn serialize(&self, serializer: S) -> Result where @@ -1023,6 +1026,20 @@ where } } +#[cfg(not(no_core_num_saturating))] +impl Serialize for Saturating +where + T: Serialize, +{ + #[inline] + fn serialize(&self, serializer: S) -> Result + where + S: Serializer, + { + self.0.serialize(serializer) + } +} + impl Serialize for Reverse where T: Serialize, diff --git a/third_party/rust/serde/src/ser/impossible.rs b/third_party/rust/serde/src/ser/impossible.rs index 479be94071f0..6432d5775af6 100644 --- a/third_party/rust/serde/src/ser/impossible.rs +++ b/third_party/rust/serde/src/ser/impossible.rs @@ -72,9 +72,9 @@ where type Ok = Ok; type Error = Error; - fn serialize_element(&mut self, value: &T) -> Result<(), Error> + fn serialize_element(&mut self, value: &T) -> Result<(), Error> where - T: Serialize, + T: ?Sized + Serialize, { let _ = value; match self.void {} @@ -92,9 +92,9 @@ where type Ok = Ok; type Error = Error; - fn serialize_element(&mut self, value: &T) -> Result<(), Error> + fn serialize_element(&mut self, value: &T) -> Result<(), Error> where - T: Serialize, + T: ?Sized + Serialize, { let _ = value; match self.void {} @@ -112,9 +112,9 @@ where type Ok = Ok; type Error = Error; - fn serialize_field(&mut self, value: &T) -> Result<(), Error> + fn serialize_field(&mut self, value: &T) -> Result<(), Error> where - T: Serialize, + T: ?Sized + Serialize, { let _ = value; match self.void {} @@ -132,9 +132,9 @@ where type Ok = Ok; type Error = Error; - fn serialize_field(&mut self, value: &T) -> Result<(), Error> + fn serialize_field(&mut self, value: &T) -> Result<(), Error> where - T: Serialize, + T: ?Sized + Serialize, { let _ = value; match self.void {} @@ -152,17 +152,17 @@ where type Ok = Ok; type Error = Error; - fn serialize_key(&mut self, key: &T) -> Result<(), Error> + fn serialize_key(&mut self, key: &T) -> Result<(), Error> where - T: Serialize, + T: ?Sized + Serialize, { let _ = key; match self.void {} } - fn serialize_value(&mut self, value: &T) -> Result<(), Error> + fn serialize_value(&mut self, value: &T) -> Result<(), Error> where - T: Serialize, + T: ?Sized + Serialize, { let _ = value; match self.void {} @@ -180,9 +180,9 @@ where type Ok = Ok; type Error = Error; - fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), Error> + fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), Error> where - T: Serialize, + T: ?Sized + Serialize, { let _ = key; let _ = value; @@ -201,9 +201,9 @@ where type Ok = Ok; type Error = Error; - fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), Error> + fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), Error> where - T: Serialize, + T: ?Sized + Serialize, { let _ = key; let _ = value; diff --git a/third_party/rust/serde/src/ser/mod.rs b/third_party/rust/serde/src/ser/mod.rs index 75c45140e227..74b5e07691ab 100644 --- a/third_party/rust/serde/src/ser/mod.rs +++ b/third_party/rust/serde/src/ser/mod.rs @@ -796,9 +796,9 @@ pub trait Serializer: Sized { /// ``` /// /// [`Some(T)`]: https://doc.rust-lang.org/std/option/enum.Option.html#variant.Some - fn serialize_some(self, value: &T) -> Result + fn serialize_some(self, value: &T) -> Result where - T: Serialize; + T: ?Sized + Serialize; /// Serialize a `()` value. /// @@ -891,13 +891,13 @@ pub trait Serializer: Sized { /// } /// } /// ``` - fn serialize_newtype_struct( + fn serialize_newtype_struct( self, name: &'static str, value: &T, ) -> Result where - T: Serialize; + T: ?Sized + Serialize; /// Serialize a newtype variant like `E::N` in `enum E { N(u8) }`. /// @@ -925,7 +925,7 @@ pub trait Serializer: Sized { /// } /// } /// ``` - fn serialize_newtype_variant( + fn serialize_newtype_variant( self, name: &'static str, variant_index: u32, @@ -933,7 +933,7 @@ pub trait Serializer: Sized { value: &T, ) -> Result where - T: Serialize; + T: ?Sized + Serialize; /// Begin to serialize a variably sized sequence. This call must be /// followed by zero or more calls to `serialize_element`, then a call to @@ -1170,7 +1170,8 @@ pub trait Serializer: Sized { /// then a call to `end`. /// /// The `name` is the name of the struct and the `len` is the number of - /// data fields that will be serialized. + /// data fields that will be serialized. `len` does not include fields + /// which are skipped with [`SerializeStruct::skip_field`]. /// /// ```edition2021 /// use serde::ser::{Serialize, SerializeStruct, Serializer}; @@ -1207,6 +1208,8 @@ pub trait Serializer: Sized { /// The `name` is the name of the enum, the `variant_index` is the index of /// this variant within the enum, the `variant` is the name of the variant, /// and the `len` is the number of data fields that will be serialized. + /// `len` does not include fields which are skipped with + /// [`SerializeStructVariant::skip_field`]. /// /// ```edition2021 /// use serde::ser::{Serialize, SerializeStructVariant, Serializer}; @@ -1346,9 +1349,9 @@ pub trait Serializer: Sized { /// [`String`]: https://doc.rust-lang.org/std/string/struct.String.html /// [`serialize_str`]: #tymethod.serialize_str #[cfg(any(feature = "std", feature = "alloc"))] - fn collect_str(self, value: &T) -> Result + fn collect_str(self, value: &T) -> Result where - T: Display, + T: ?Sized + Display, { self.serialize_str(&value.to_string()) } @@ -1379,9 +1382,9 @@ pub trait Serializer: Sized { /// } /// ``` #[cfg(not(any(feature = "std", feature = "alloc")))] - fn collect_str(self, value: &T) -> Result + fn collect_str(self, value: &T) -> Result where - T: Display; + T: ?Sized + Display; /// Determine whether `Serialize` implementations should serialize in /// human-readable form. @@ -1493,9 +1496,9 @@ pub trait SerializeSeq { type Error: Error; /// Serialize a sequence element. - fn serialize_element(&mut self, value: &T) -> Result<(), Self::Error> + fn serialize_element(&mut self, value: &T) -> Result<(), Self::Error> where - T: Serialize; + T: ?Sized + Serialize; /// Finish serializing a sequence. fn end(self) -> Result; @@ -1593,9 +1596,9 @@ pub trait SerializeTuple { type Error: Error; /// Serialize a tuple element. - fn serialize_element(&mut self, value: &T) -> Result<(), Self::Error> + fn serialize_element(&mut self, value: &T) -> Result<(), Self::Error> where - T: Serialize; + T: ?Sized + Serialize; /// Finish serializing a tuple. fn end(self) -> Result; @@ -1638,9 +1641,9 @@ pub trait SerializeTupleStruct { type Error: Error; /// Serialize a tuple struct field. - fn serialize_field(&mut self, value: &T) -> Result<(), Self::Error> + fn serialize_field(&mut self, value: &T) -> Result<(), Self::Error> where - T: Serialize; + T: ?Sized + Serialize; /// Finish serializing a tuple struct. fn end(self) -> Result; @@ -1696,9 +1699,9 @@ pub trait SerializeTupleVariant { type Error: Error; /// Serialize a tuple variant field. - fn serialize_field(&mut self, value: &T) -> Result<(), Self::Error> + fn serialize_field(&mut self, value: &T) -> Result<(), Self::Error> where - T: Serialize; + T: ?Sized + Serialize; /// Finish serializing a tuple variant. fn end(self) -> Result; @@ -1767,9 +1770,9 @@ pub trait SerializeMap { /// `serialize_entry` instead as it may be implemented more efficiently in /// some formats compared to a pair of calls to `serialize_key` and /// `serialize_value`. - fn serialize_key(&mut self, key: &T) -> Result<(), Self::Error> + fn serialize_key(&mut self, key: &T) -> Result<(), Self::Error> where - T: Serialize; + T: ?Sized + Serialize; /// Serialize a map value. /// @@ -1777,9 +1780,9 @@ pub trait SerializeMap { /// /// Calling `serialize_value` before `serialize_key` is incorrect and is /// allowed to panic or produce bogus results. - fn serialize_value(&mut self, value: &T) -> Result<(), Self::Error> + fn serialize_value(&mut self, value: &T) -> Result<(), Self::Error> where - T: Serialize; + T: ?Sized + Serialize; /// Serialize a map entry consisting of a key and a value. /// @@ -1798,14 +1801,10 @@ pub trait SerializeMap { /// [`Serialize`]: ../trait.Serialize.html /// [`serialize_key`]: #tymethod.serialize_key /// [`serialize_value`]: #tymethod.serialize_value - fn serialize_entry( - &mut self, - key: &K, - value: &V, - ) -> Result<(), Self::Error> + fn serialize_entry(&mut self, key: &K, value: &V) -> Result<(), Self::Error> where - K: Serialize, - V: Serialize, + K: ?Sized + Serialize, + V: ?Sized + Serialize, { tri!(self.serialize_key(key)); self.serialize_value(value) @@ -1856,15 +1855,13 @@ pub trait SerializeStruct { type Error: Error; /// Serialize a struct field. - fn serialize_field( - &mut self, - key: &'static str, - value: &T, - ) -> Result<(), Self::Error> + fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error> where - T: Serialize; + T: ?Sized + Serialize; /// Indicate that a struct field has been skipped. + /// + /// The default implementation does nothing. #[inline] fn skip_field(&mut self, key: &'static str) -> Result<(), Self::Error> { let _ = key; @@ -1922,15 +1919,13 @@ pub trait SerializeStructVariant { type Error: Error; /// Serialize a struct variant field. - fn serialize_field( - &mut self, - key: &'static str, - value: &T, - ) -> Result<(), Self::Error> + fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error> where - T: Serialize; + T: ?Sized + Serialize; /// Indicate that a struct variant field has been skipped. + /// + /// The default implementation does nothing. #[inline] fn skip_field(&mut self, key: &'static str) -> Result<(), Self::Error> { let _ = key; diff --git a/third_party/rust/serde_derive/.cargo-checksum.json b/third_party/rust/serde_derive/.cargo-checksum.json index 331652acd71c..4795d909a2b2 100644 --- a/third_party/rust/serde_derive/.cargo-checksum.json +++ b/third_party/rust/serde_derive/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"daf3d8f8efdf30d3575c7d1e1372ff7287891fb95625223e4a8a2f792c4474e1","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"731c044fc5f98b37a89e9049c9214267db98763309cb63146b45c029640f82a3","crates-io.md":"56e988ac4944c45f5bf5051e3827892ed8fb817853d99d9df1fff6621108e270","src/bound.rs":"6c5c20785ac95af9480f8d0de35a7e844cc36a16012f6468db148acd03cb15c2","src/de.rs":"c221ab2b94a5d80dccff74a37f3448b3d695656552b452595dc289c73b12fb2b","src/dummy.rs":"9533dfee23f20d92ea75734c739022820c2787ded0d54f459feacdeb770ec912","src/fragment.rs":"6757cb4c3131d4300f093572efc273c4ab5a20e3e1efb54a311dcfa52d0bd6eb","src/internals/ast.rs":"7dc997e4090033bbd1d0bdd870e8bb87b096b7f66cfd02047f6b85ebdd569b12","src/internals/attr.rs":"6584c0a02de0d17993877303f3cc2c1bccf235257632220421f98082d82d387a","src/internals/case.rs":"10c8dda2b32d8c6c6b63cf09cdc63d02375af7e95ecefe8fecb34f93b65191bb","src/internals/check.rs":"d842eb9912fd29311060b67f3bc62c438eb7b5d86093355acb4de7eee02a0ef8","src/internals/ctxt.rs":"83a4e6fbe0e439d578478883594407e03f2f340541be479bdf0b04a202633a37","src/internals/mod.rs":"ed021ca635c18132a0e5c3d90f21b7f65def0a61e946421a30200b5b9ab6ad43","src/internals/receiver.rs":"fe8a480669511b5edcfe71f5dd290cf72ccec54c9016ec85f2ac59dce538077f","src/internals/respan.rs":"899753859c58ce5f532a3ec4584796a52f13ed5a0533191e48c953ba5c1b52ff","src/internals/symbol.rs":"d619e88caa3c7a09b03014257f2b349ee922290062d9b97b4dd19d0e64532690","src/lib.rs":"7a6c2796244658f62d398ebc6819c4f3064dac4a1ad7c52b40359f9411f1c266","src/pretend.rs":"7facc10a5b805564dd95735ae11118ec17ca6adcc49a59764e7c920e27b9fc4a","src/ser.rs":"e3341471cea9d7e2fb4043e5d1746862beb9a4e25196170879eeac529d460920","src/this.rs":"87818dc80cbb521b51938a653d09daf10aafc220bb10425948de82ad670fcb85"},"package":"7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"} \ No newline at end of file +{"files":{"Cargo.toml":"a8aac06a59f67cf1f468da3e234ae0cbb87089ad064bdfae4beb72932cd4210f","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"731c044fc5f98b37a89e9049c9214267db98763309cb63146b45c029640f82a3","crates-io.md":"56e988ac4944c45f5bf5051e3827892ed8fb817853d99d9df1fff6621108e270","src/bound.rs":"6c5c20785ac95af9480f8d0de35a7e844cc36a16012f6468db148acd03cb15c2","src/de.rs":"c221ab2b94a5d80dccff74a37f3448b3d695656552b452595dc289c73b12fb2b","src/dummy.rs":"9533dfee23f20d92ea75734c739022820c2787ded0d54f459feacdeb770ec912","src/fragment.rs":"6757cb4c3131d4300f093572efc273c4ab5a20e3e1efb54a311dcfa52d0bd6eb","src/internals/ast.rs":"7dc997e4090033bbd1d0bdd870e8bb87b096b7f66cfd02047f6b85ebdd569b12","src/internals/attr.rs":"6584c0a02de0d17993877303f3cc2c1bccf235257632220421f98082d82d387a","src/internals/case.rs":"10c8dda2b32d8c6c6b63cf09cdc63d02375af7e95ecefe8fecb34f93b65191bb","src/internals/check.rs":"d842eb9912fd29311060b67f3bc62c438eb7b5d86093355acb4de7eee02a0ef8","src/internals/ctxt.rs":"83a4e6fbe0e439d578478883594407e03f2f340541be479bdf0b04a202633a37","src/internals/mod.rs":"ed021ca635c18132a0e5c3d90f21b7f65def0a61e946421a30200b5b9ab6ad43","src/internals/receiver.rs":"fe8a480669511b5edcfe71f5dd290cf72ccec54c9016ec85f2ac59dce538077f","src/internals/respan.rs":"899753859c58ce5f532a3ec4584796a52f13ed5a0533191e48c953ba5c1b52ff","src/internals/symbol.rs":"d619e88caa3c7a09b03014257f2b349ee922290062d9b97b4dd19d0e64532690","src/lib.rs":"fd046746f651890097154a0a8cb5f90c050fda8da4e0bbdf1c8e4826d10794db","src/pretend.rs":"7facc10a5b805564dd95735ae11118ec17ca6adcc49a59764e7c920e27b9fc4a","src/ser.rs":"a5638fa1b42b2a0d23cc12649f9180d4132f4cb7cf9edace1a1caed483f609e9","src/this.rs":"87818dc80cbb521b51938a653d09daf10aafc220bb10425948de82ad670fcb85"},"package":"e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9"} \ No newline at end of file diff --git a/third_party/rust/serde_derive/Cargo.toml b/third_party/rust/serde_derive/Cargo.toml index 33642ef04c56..881bb3b7a5ee 100644 --- a/third_party/rust/serde_derive/Cargo.toml +++ b/third_party/rust/serde_derive/Cargo.toml @@ -10,9 +10,10 @@ # See Cargo.toml.orig for the original contents. [package] +edition = "2015" rust-version = "1.56" name = "serde_derive" -version = "1.0.197" +version = "1.0.198" authors = [ "Erick Tryzelaar ", "David Tolnay ", diff --git a/third_party/rust/serde_derive/src/lib.rs b/third_party/rust/serde_derive/src/lib.rs index b91f17b1a9db..70b16e995526 100644 --- a/third_party/rust/serde_derive/src/lib.rs +++ b/third_party/rust/serde_derive/src/lib.rs @@ -13,7 +13,7 @@ //! //! [https://serde.rs/derive.html]: https://serde.rs/derive.html -#![doc(html_root_url = "https://docs.rs/serde_derive/1.0.197")] +#![doc(html_root_url = "https://docs.rs/serde_derive/1.0.198")] // Ignored clippy lints #![allow( // clippy false positive: https://github.com/rust-lang/rust-clippy/issues/7054 diff --git a/third_party/rust/serde_derive/src/ser.rs b/third_party/rust/serde_derive/src/ser.rs index 3be51ee52d2d..7d89d2212591 100644 --- a/third_party/rust/serde_derive/src/ser.rs +++ b/third_party/rust/serde_derive/src/ser.rs @@ -289,7 +289,7 @@ fn serialize_tuple_struct( } fn serialize_struct(params: &Parameters, fields: &[Field], cattrs: &attr::Container) -> Fragment { - assert!(fields.len() as u64 <= u64::from(u32::max_value())); + assert!(fields.len() as u64 <= u64::from(u32::MAX)); if cattrs.has_flatten() { serialize_struct_as_map(params, fields, cattrs) @@ -397,7 +397,7 @@ fn serialize_struct_as_map( } fn serialize_enum(params: &Parameters, variants: &[Variant], cattrs: &attr::Container) -> Fragment { - assert!(variants.len() as u64 <= u64::from(u32::max_value())); + assert!(variants.len() as u64 <= u64::from(u32::MAX)); let self_var = ¶ms.self_var; diff --git a/third_party/rust/thiserror-impl/.cargo-checksum.json b/third_party/rust/thiserror-impl/.cargo-checksum.json index 6adcf117c25d..e4016f116556 100644 --- a/third_party/rust/thiserror-impl/.cargo-checksum.json +++ b/third_party/rust/thiserror-impl/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"0a1dbd3bcb92455b7ed1d661e0c05958a64fd694a18357d3c61a8e1f2cffb9bd","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","src/ast.rs":"e2fbc32e91cd462757107c1f8ab2f888f08c865ac71270583f9e11b83e3c32ca","src/attr.rs":"7451fc0b0a06649e62679c7558e5aeb0e2019400c170cde54c23289ef44188f7","src/expand.rs":"9469753e0949556848183084e0f22521c6300d38ca0de196441446c50f350d3c","src/fmt.rs":"5d1cefc012403c2d4ff7ab2513c0ec559166df4271d5983a6463939b5ec8c3e1","src/generics.rs":"2076cde22271be355a8131a77add4b93f83ab0af4317cd2df5471fffa4f95c66","src/lib.rs":"5eea86c771e643328ad9bc3b881cce4bf9d50adae1b33e0d07645bdd9044003d","src/prop.rs":"5ba613e38430831259f20b258f33d57dcb783fbaeeb49e5faffa7b2a7be99e67","src/span.rs":"430460a4fa0d1fa9c627c1ddd575d2b101778fea84217591e1a93a5f6a2a0132","src/valid.rs":"ac95253944fd360d3578d0643a7baabb2cfa6bf9fbced7a6ce1f7b0529a3bb98"},"package":"a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81"} \ No newline at end of file +{"files":{"Cargo.toml":"27f9696d64a97df170dc620366a6b6b0b162917a686511e6b878586b04846226","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","src/ast.rs":"9b6cd6b1553483c99cd7e36aa422d37f4353c99b15da55534d28822f7fa7fd08","src/attr.rs":"99fca8c65a1907ee2f43f7ec28ce465bae22336c529bd7148738f9ce35375101","src/expand.rs":"2736a714372a4b81ac5438783dd2c0f656d624bec5cc4089af96ceecaeee011e","src/fmt.rs":"5d1cefc012403c2d4ff7ab2513c0ec559166df4271d5983a6463939b5ec8c3e1","src/generics.rs":"2076cde22271be355a8131a77add4b93f83ab0af4317cd2df5471fffa4f95c66","src/lib.rs":"5eea86c771e643328ad9bc3b881cce4bf9d50adae1b33e0d07645bdd9044003d","src/prop.rs":"5ba613e38430831259f20b258f33d57dcb783fbaeeb49e5faffa7b2a7be99e67","src/span.rs":"430460a4fa0d1fa9c627c1ddd575d2b101778fea84217591e1a93a5f6a2a0132","src/valid.rs":"ac95253944fd360d3578d0643a7baabb2cfa6bf9fbced7a6ce1f7b0529a3bb98"},"package":"d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"} \ No newline at end of file diff --git a/third_party/rust/thiserror-impl/Cargo.toml b/third_party/rust/thiserror-impl/Cargo.toml index 5445c126eccb..757302d6af22 100644 --- a/third_party/rust/thiserror-impl/Cargo.toml +++ b/third_party/rust/thiserror-impl/Cargo.toml @@ -13,7 +13,7 @@ edition = "2021" rust-version = "1.56" name = "thiserror-impl" -version = "1.0.57" +version = "1.0.59" authors = ["David Tolnay "] description = "Implementation detail of the `thiserror` crate" license = "MIT OR Apache-2.0" diff --git a/third_party/rust/thiserror-impl/src/ast.rs b/third_party/rust/thiserror-impl/src/ast.rs index 9e069289801d..4739d58beb34 100644 --- a/third_party/rust/thiserror-impl/src/ast.rs +++ b/third_party/rust/thiserror-impl/src/ast.rs @@ -82,7 +82,7 @@ impl<'a> Enum<'a> { .map(|node| { let mut variant = Variant::from_syn(node, &scope, span)?; if let display @ None = &mut variant.attrs.display { - *display = attrs.display.clone(); + display.clone_from(&attrs.display); } if let Some(display) = &mut variant.attrs.display { display.expand_shorthand(&variant.fields); diff --git a/third_party/rust/thiserror-impl/src/attr.rs b/third_party/rust/thiserror-impl/src/attr.rs index 269c69eca582..395edb1f5a52 100644 --- a/third_party/rust/thiserror-impl/src/attr.rs +++ b/third_party/rust/thiserror-impl/src/attr.rs @@ -230,7 +230,18 @@ impl ToTokens for Display<'_> { impl ToTokens for Trait { fn to_tokens(&self, tokens: &mut TokenStream) { - let trait_name = format_ident!("{}", format!("{:?}", self)); - tokens.extend(quote!(::core::fmt::#trait_name)); + let trait_name = match self { + Trait::Debug => "Debug", + Trait::Display => "Display", + Trait::Octal => "Octal", + Trait::LowerHex => "LowerHex", + Trait::UpperHex => "UpperHex", + Trait::Pointer => "Pointer", + Trait::Binary => "Binary", + Trait::LowerExp => "LowerExp", + Trait::UpperExp => "UpperExp", + }; + let ident = Ident::new(trait_name, Span::call_site()); + tokens.extend(quote!(::core::fmt::#ident)); } } diff --git a/third_party/rust/thiserror-impl/src/expand.rs b/third_party/rust/thiserror-impl/src/expand.rs index 1b44513a2399..296b567bdccb 100644 --- a/third_party/rust/thiserror-impl/src/expand.rs +++ b/third_party/rust/thiserror-impl/src/expand.rs @@ -155,7 +155,7 @@ fn impl_struct(input: Struct) -> TokenStream { ::core::fmt::Display::fmt(&self.#only_field, __formatter) }) } else if let Some(display) = &input.attrs.display { - display_implied_bounds = display.implied_bounds.clone(); + display_implied_bounds.clone_from(&display.implied_bounds); let use_as_display = use_as_display(display.has_bonus_display); let pat = fields_pat(&input.fields); Some(quote! { @@ -399,7 +399,7 @@ fn impl_enum(input: Enum) -> TokenStream { let mut display_implied_bounds = Set::new(); let display = match &variant.attrs.display { Some(display) => { - display_implied_bounds = display.implied_bounds.clone(); + display_implied_bounds.clone_from(&display.implied_bounds); display.to_token_stream() } None => { diff --git a/third_party/rust/thiserror/.cargo-checksum.json b/third_party/rust/thiserror/.cargo-checksum.json index efb4bd5017fe..f7e22ca1eeb1 100644 --- a/third_party/rust/thiserror/.cargo-checksum.json +++ b/third_party/rust/thiserror/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"315a0379d474f762b74a40fb83f8a52b7efe0f5a352e7a7ab0b9d118f32f609e","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"106c5a937767d49503e1fc5eae1b924f57f15decd8583720a3c652483e348a64","build.rs":"532f6ac494cdddfad3267067a46969a8052b02c1bd94567361f7103ab0dc8c28","build/probe.rs":"3245569a228727091f335db44c7c2f729729b2dfac9f46c1143eb179439f223d","rust-toolchain.toml":"6bbb61302978c736b2da03e4fb40e3beab908f85d533ab46fd541e637b5f3e0f","src/aserror.rs":"cf3c98abb2b9e06afa3c4aba0df14938417c3e330315863437561cbb3573888b","src/display.rs":"0adeeeb524c6bee06de179d54e82a43dc12d2c5b7f69f6fd268ba4611ebf5233","src/lib.rs":"6903e561c2a83901061ed717061040a1d0ffb4296c2c52e19e617e1ca6c07211","src/provide.rs":"8007e22953bacfcc57bb7d12a03fbeb0acece5d2ec889cf55522a4e071d26df3","tests/compiletest.rs":"022a8e400ef813d7ea1875b944549cee5125f6a995dc33e93b48cba3e1b57bd1","tests/test_backtrace.rs":"a8f038490fb881463c0e8c36557617c47cf2d181f16c00525d4d139c7964fade","tests/test_deprecated.rs":"7b80a10f090a3982da017556d3d71398abcead59afd8278c7b9d9b1f7b66c7b3","tests/test_display.rs":"91a6bf704fd78a5565330f438f30ae4088aa8bc7ac5e1412401e440072408c03","tests/test_error.rs":"d06dca3c38f22d7ce4e27dadd6c0f78e5cefe3a2ebbc5fe44abc9ddd5ee1985f","tests/test_expr.rs":"d35b11040ebc547467f52571051854e3e094d52b8e229fa3d44700d5f40959a2","tests/test_from.rs":"36bd22be7b048cd187a19076aeac1456040f20a0b677b01c6003998b63439ea1","tests/test_generics.rs":"adc61f0d5fe8d53796848d44fb0373be5eab19a1eeb6a7172bc6f0dd7b91199c","tests/test_lints.rs":"c17d79d77edfcdd4b8f6dcdcd1c70ad065cfbc747e1a618ac6343315d0b59ea4","tests/test_option.rs":"ac30d929c019d6c54d1c1792b09e43c18dc0e4123b82051ff9e5db5e63c15e43","tests/test_path.rs":"ef5452c7e828a0179f5ace7e19f95b9762aa887caf10244adbfe36ded712c090","tests/test_source.rs":"f2f04f11bf8a709eddb1c68f113cda0c2be87e56800d6b9d991bedd545b4642f","tests/test_transparent.rs":"cd8d5be14d00d610a1782104bea6c013618501dab5c3625178ecfcf66e31f939","tests/ui/bad-field-attr.rs":"c5b567e3091969a01061843fb2d95c5e1aa3fa81edfeecdf416a84a6fba40aa8","tests/ui/bad-field-attr.stderr":"78f576d5ec66464a77f1cdf0f5bb7dcdf18f7f04f1165983a6239ec59d908ea3","tests/ui/concat-display.rs":"3995bd6b3bdd67df7bb16499775d89600c0dd20895633fe807396a64c117078d","tests/ui/concat-display.stderr":"256dfde61ee689ebe51588b135e2e030bdf95ba5adef1cb59f588c797bbdeef2","tests/ui/duplicate-enum-source.rs":"bfe28ce18042d446a76c7411aa233598211ce1157fdd3cb87bff3b3fa7c33131","tests/ui/duplicate-enum-source.stderr":"3d32fead420b27b4497be49080bc3b78f7f0ba339ead3de6c94e5dc20302c18f","tests/ui/duplicate-fmt.rs":"af53b66445bcce076a114376747f176b42c060a156563a41ccb638ae14c451fd","tests/ui/duplicate-fmt.stderr":"998bb121ce6f1595fd99529a7a1b06451b6bf476924337dce5524a83a7a5f1a1","tests/ui/duplicate-struct-source.rs":"f3d5f8e3d6fccfcdbb630db291353709583a920c6bf46f9f9de9966b67ea4c0f","tests/ui/duplicate-struct-source.stderr":"fb761d76668ac42357cf37b03c0abdbae5de0a828034990850291c9cb6ab766d","tests/ui/duplicate-transparent.rs":"41a9447e85f1a47027023442acde55c3d8610ec46d91b39bd43a42d7a004d747","tests/ui/duplicate-transparent.stderr":"4975abad43e973df158f18098d9bcb9dc39f8e75d3e733ed5d6620d1ee065c11","tests/ui/fallback-impl-with-display.rs":"141a8efbabe3fdac584bec8a61e6cceb58a34a70b825f6277037bf9d591150eb","tests/ui/fallback-impl-with-display.stderr":"1b3dad712b97598fbee70125471de1a8106eb161d42ce1f790ae07be8c8984ba","tests/ui/from-backtrace-backtrace.rs":"0caac64486c0eb9c076553c0502d468fbc477602a9a2595165a1dcd95524e5ff","tests/ui/from-backtrace-backtrace.stderr":"e24156ae0828878f3282341732b6e032eaa8cb4b4db366a6b5437ed0731d40a7","tests/ui/from-not-source.rs":"744a55aeffe11066830159ac023c33aaa5576e313b341fa24440ee13dfe3ac98","tests/ui/from-not-source.stderr":"525038e8b841707b927434cca4549168f73bd305faca17552a0d1fffa542ccc4","tests/ui/invalid-input-impl-anyway.rs":"6de91f71ddf038dffa3b9da33763a2ec3a5aa0047528e19ba998d5efe3aada5b","tests/ui/invalid-input-impl-anyway.stderr":"fa2725053cd87fc37f87546b377e6e5eed95c45e2a960863303b21a1935fdddb","tests/ui/lifetime.rs":"e72e0391695e47fcd07edbf3819f114e468e2097086ec687781c7c8d6b4b7da7","tests/ui/lifetime.stderr":"d889a23f71324afe95dafc5f9d15337fbdbc9977cb8924f0cafe3a3becf4ced7","tests/ui/missing-display.rs":"c1fd1bc0ec0fb103d7f7b128837f717d49485662839899d570b3c983f1332888","tests/ui/missing-display.stderr":"a8de0f1559da9320ee99ef334937d532d9e9f40a32ed7f8ce56fb465628bff96","tests/ui/missing-fmt.rs":"bc9e2830e54c2474ff6c27a766ed3dee88d29e40f93f30e8d64d63233866c17d","tests/ui/missing-fmt.stderr":"9a20ccee9b660fe31a5b3199307b48580bb8305cb9ce33d97d3fc767a0cfc614","tests/ui/no-display.rs":"962245372272d23e9833311c15e73221b3c7da822a2ff90189613af56ffb5c2e","tests/ui/no-display.stderr":"c145dbdd39e145b5c6f26f8504fbf1e33efa2eada37e09900b39dd62667f22d7","tests/ui/source-enum-not-error.rs":"3add5e7b4503d964bcae0848904822e1473c1d08c5a146c2df5347314ce1b8df","tests/ui/source-enum-not-error.stderr":"aeba0a8a0084833e470b6be2250370809f53c279ad603232af5302b9de9f8cce","tests/ui/source-enum-unnamed-field-not-error.rs":"a98989e908b84a8e6e6dceef02af7bdd1098a444d229950f67ed4f54d55c62e7","tests/ui/source-enum-unnamed-field-not-error.stderr":"4f3d90525dd462e67f633e83b26acec75d9af3626e40d28ded2c2438e0c73192","tests/ui/source-struct-not-error.rs":"09fb7713637242dca9192585a6daeb8d732dc1c1d0fa522b74f1c98618e6d949","tests/ui/source-struct-not-error.stderr":"b45eb66f078fec68d44feff1f8d6a676c341e9e9d9acb35daa58ec1ea20f9dae","tests/ui/source-struct-unnamed-field-not-error.rs":"eee605a9aafbb093666393e25cef4f7d7b8e90d518b9fadbdbed9685c66ccfcd","tests/ui/source-struct-unnamed-field-not-error.stderr":"10e408f71c1b61880b1d52739f222ec58a66be70a1df17e44c536fe0f9ffe2a6","tests/ui/transparent-display.rs":"b3c59583eb64b0b5a246444456d03cf52d51bcdc08885023600dbb44fd87e5f2","tests/ui/transparent-display.stderr":"16d538914e0d92026bde4b4bec75660217da9ecc6b621d12d2eb81d33ed1d1da","tests/ui/transparent-enum-many.rs":"2a40a764fb4683bff57973eec61507a6c00f7d4d7a32da6e7bd0190c2e445434","tests/ui/transparent-enum-many.stderr":"f1d78c1d6d8edbef153420db4fb9ca3dc6076fa043b5b1bc0cd291daa417a3ea","tests/ui/transparent-enum-not-error.rs":"f6315993e68bc71d6d4d39afa4d059695308ef785f92cc0d1df3e9ff55be2a9a","tests/ui/transparent-enum-not-error.stderr":"3a5fe056cd4566f402b03cb591394e0ba85bd74da53df3c8d50bda4a05c2e5ba","tests/ui/transparent-enum-source.rs":"18f606a98ac0a53f08dc56f5f923b9cbe75d25ed34479c777b48dac305d5968c","tests/ui/transparent-enum-source.stderr":"1b2e0ac53951034575d43ec0396c4e2b3cfb272db2aef8d6baa13a7e1632cc84","tests/ui/transparent-enum-unnamed-field-not-error.rs":"0c720567e9e0f87921055dfa9f607661725377633445e01a4b5048c7a7a50a85","tests/ui/transparent-enum-unnamed-field-not-error.stderr":"6d84e9a7f4e88daba12931a6c1508be60bb19125d06e44fa2fa205126d953bb1","tests/ui/transparent-struct-many.rs":"72c6b6c1a44c203d3bc68989b2f1ec092531ef75b745432824c3776c290326f6","tests/ui/transparent-struct-many.stderr":"7bd0536dbb54a0ce7d4a8e66ca7624a1b132d8a1d1e4fecca642ec77494ac01c","tests/ui/transparent-struct-not-error.rs":"fd814d3141c9182b1267b558d9daef8dd6e8b6462e1ad42b197f3a1c0703dce2","tests/ui/transparent-struct-not-error.stderr":"ac7634ea72096d8a5c1a91fd4f1b45ef870130a2698d9ae7c6530cec2f9799d5","tests/ui/transparent-struct-source.rs":"863fa691ed7d27e8767da58d9ee11fd40d6642274b36338ca1074c07964ea2b3","tests/ui/transparent-struct-source.stderr":"267dab65929e67d32347fb467a00b43af931f8205d727d7671938580217fc70e","tests/ui/transparent-struct-unnamed-field-not-error.rs":"fbff5874be44a5dcc347693d7929537256b187dfec467ed72c9968c095228d8d","tests/ui/transparent-struct-unnamed-field-not-error.stderr":"ea99d5422348c2588ad7374360e2a24649f040b9c5614c9308eff958f61960ec","tests/ui/unexpected-field-fmt.rs":"29fba7b4d81c642ec8e47cfe053aa515acf9080a86d65e685363a48993becfe3","tests/ui/unexpected-field-fmt.stderr":"20731c4a08af04bed3ff513903adadd690b6bc532b15604557e7f25575a8338f","tests/ui/unexpected-struct-source.rs":"c6cbe882d622635c216feb8290b1bd536ce0ec4feee16bc087667a21b3641d5c","tests/ui/unexpected-struct-source.stderr":"7c8227513478f6cc09e8a28be337c8a0e758a06ca5978d774c91bd43c4a54043","tests/ui/union.rs":"331adff27cebd8b95b03b6742cc8247331fda1f961e1590ed39c8d39f50cf1d8","tests/ui/union.stderr":"5f67ad29753d6fb14bc03aef7d4a1f660ee7796e469c037efbf8b13456934ad3"},"package":"1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b"} \ No newline at end of file +{"files":{"Cargo.toml":"7df807832514d69476a436a1466ed9cefde6d73f8fff7829718096c8bf6bb88e","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"106c5a937767d49503e1fc5eae1b924f57f15decd8583720a3c652483e348a64","build.rs":"e93f4e6f8b7d24c9b119a85ea134067d2c2a7f78e082c1ab1e541c41225d5a36","build/probe.rs":"3245569a228727091f335db44c7c2f729729b2dfac9f46c1143eb179439f223d","rust-toolchain.toml":"6bbb61302978c736b2da03e4fb40e3beab908f85d533ab46fd541e637b5f3e0f","src/aserror.rs":"cf3c98abb2b9e06afa3c4aba0df14938417c3e330315863437561cbb3573888b","src/display.rs":"0adeeeb524c6bee06de179d54e82a43dc12d2c5b7f69f6fd268ba4611ebf5233","src/lib.rs":"6a823f259101ba3c28fc8824afbe6ce66c1c4ffa7bea183172b25b891dfa1695","src/provide.rs":"8007e22953bacfcc57bb7d12a03fbeb0acece5d2ec889cf55522a4e071d26df3","tests/compiletest.rs":"022a8e400ef813d7ea1875b944549cee5125f6a995dc33e93b48cba3e1b57bd1","tests/test_backtrace.rs":"a8f038490fb881463c0e8c36557617c47cf2d181f16c00525d4d139c7964fade","tests/test_deprecated.rs":"7b80a10f090a3982da017556d3d71398abcead59afd8278c7b9d9b1f7b66c7b3","tests/test_display.rs":"91a6bf704fd78a5565330f438f30ae4088aa8bc7ac5e1412401e440072408c03","tests/test_error.rs":"d06dca3c38f22d7ce4e27dadd6c0f78e5cefe3a2ebbc5fe44abc9ddd5ee1985f","tests/test_expr.rs":"d35b11040ebc547467f52571051854e3e094d52b8e229fa3d44700d5f40959a2","tests/test_from.rs":"36bd22be7b048cd187a19076aeac1456040f20a0b677b01c6003998b63439ea1","tests/test_generics.rs":"adc61f0d5fe8d53796848d44fb0373be5eab19a1eeb6a7172bc6f0dd7b91199c","tests/test_lints.rs":"93d66ea5b6b91634ddf18a520b455f8bc65f3e9bbf90874e239f45ab15b0c125","tests/test_option.rs":"ac30d929c019d6c54d1c1792b09e43c18dc0e4123b82051ff9e5db5e63c15e43","tests/test_path.rs":"ef5452c7e828a0179f5ace7e19f95b9762aa887caf10244adbfe36ded712c090","tests/test_source.rs":"f2f04f11bf8a709eddb1c68f113cda0c2be87e56800d6b9d991bedd545b4642f","tests/test_transparent.rs":"cd8d5be14d00d610a1782104bea6c013618501dab5c3625178ecfcf66e31f939","tests/ui/bad-field-attr.rs":"c5b567e3091969a01061843fb2d95c5e1aa3fa81edfeecdf416a84a6fba40aa8","tests/ui/bad-field-attr.stderr":"78f576d5ec66464a77f1cdf0f5bb7dcdf18f7f04f1165983a6239ec59d908ea3","tests/ui/concat-display.rs":"3995bd6b3bdd67df7bb16499775d89600c0dd20895633fe807396a64c117078d","tests/ui/concat-display.stderr":"256dfde61ee689ebe51588b135e2e030bdf95ba5adef1cb59f588c797bbdeef2","tests/ui/duplicate-enum-source.rs":"bfe28ce18042d446a76c7411aa233598211ce1157fdd3cb87bff3b3fa7c33131","tests/ui/duplicate-enum-source.stderr":"3d32fead420b27b4497be49080bc3b78f7f0ba339ead3de6c94e5dc20302c18f","tests/ui/duplicate-fmt.rs":"af53b66445bcce076a114376747f176b42c060a156563a41ccb638ae14c451fd","tests/ui/duplicate-fmt.stderr":"998bb121ce6f1595fd99529a7a1b06451b6bf476924337dce5524a83a7a5f1a1","tests/ui/duplicate-struct-source.rs":"f3d5f8e3d6fccfcdbb630db291353709583a920c6bf46f9f9de9966b67ea4c0f","tests/ui/duplicate-struct-source.stderr":"fb761d76668ac42357cf37b03c0abdbae5de0a828034990850291c9cb6ab766d","tests/ui/duplicate-transparent.rs":"41a9447e85f1a47027023442acde55c3d8610ec46d91b39bd43a42d7a004d747","tests/ui/duplicate-transparent.stderr":"4975abad43e973df158f18098d9bcb9dc39f8e75d3e733ed5d6620d1ee065c11","tests/ui/fallback-impl-with-display.rs":"141a8efbabe3fdac584bec8a61e6cceb58a34a70b825f6277037bf9d591150eb","tests/ui/fallback-impl-with-display.stderr":"1b3dad712b97598fbee70125471de1a8106eb161d42ce1f790ae07be8c8984ba","tests/ui/from-backtrace-backtrace.rs":"0caac64486c0eb9c076553c0502d468fbc477602a9a2595165a1dcd95524e5ff","tests/ui/from-backtrace-backtrace.stderr":"e24156ae0828878f3282341732b6e032eaa8cb4b4db366a6b5437ed0731d40a7","tests/ui/from-not-source.rs":"744a55aeffe11066830159ac023c33aaa5576e313b341fa24440ee13dfe3ac98","tests/ui/from-not-source.stderr":"525038e8b841707b927434cca4549168f73bd305faca17552a0d1fffa542ccc4","tests/ui/invalid-input-impl-anyway.rs":"6de91f71ddf038dffa3b9da33763a2ec3a5aa0047528e19ba998d5efe3aada5b","tests/ui/invalid-input-impl-anyway.stderr":"fa2725053cd87fc37f87546b377e6e5eed95c45e2a960863303b21a1935fdddb","tests/ui/lifetime.rs":"e72e0391695e47fcd07edbf3819f114e468e2097086ec687781c7c8d6b4b7da7","tests/ui/lifetime.stderr":"d889a23f71324afe95dafc5f9d15337fbdbc9977cb8924f0cafe3a3becf4ced7","tests/ui/missing-display.rs":"c1fd1bc0ec0fb103d7f7b128837f717d49485662839899d570b3c983f1332888","tests/ui/missing-display.stderr":"a8de0f1559da9320ee99ef334937d532d9e9f40a32ed7f8ce56fb465628bff96","tests/ui/missing-fmt.rs":"bc9e2830e54c2474ff6c27a766ed3dee88d29e40f93f30e8d64d63233866c17d","tests/ui/missing-fmt.stderr":"9a20ccee9b660fe31a5b3199307b48580bb8305cb9ce33d97d3fc767a0cfc614","tests/ui/no-display.rs":"962245372272d23e9833311c15e73221b3c7da822a2ff90189613af56ffb5c2e","tests/ui/no-display.stderr":"c145dbdd39e145b5c6f26f8504fbf1e33efa2eada37e09900b39dd62667f22d7","tests/ui/source-enum-not-error.rs":"3add5e7b4503d964bcae0848904822e1473c1d08c5a146c2df5347314ce1b8df","tests/ui/source-enum-not-error.stderr":"aeba0a8a0084833e470b6be2250370809f53c279ad603232af5302b9de9f8cce","tests/ui/source-enum-unnamed-field-not-error.rs":"a98989e908b84a8e6e6dceef02af7bdd1098a444d229950f67ed4f54d55c62e7","tests/ui/source-enum-unnamed-field-not-error.stderr":"4f3d90525dd462e67f633e83b26acec75d9af3626e40d28ded2c2438e0c73192","tests/ui/source-struct-not-error.rs":"09fb7713637242dca9192585a6daeb8d732dc1c1d0fa522b74f1c98618e6d949","tests/ui/source-struct-not-error.stderr":"b45eb66f078fec68d44feff1f8d6a676c341e9e9d9acb35daa58ec1ea20f9dae","tests/ui/source-struct-unnamed-field-not-error.rs":"eee605a9aafbb093666393e25cef4f7d7b8e90d518b9fadbdbed9685c66ccfcd","tests/ui/source-struct-unnamed-field-not-error.stderr":"10e408f71c1b61880b1d52739f222ec58a66be70a1df17e44c536fe0f9ffe2a6","tests/ui/transparent-display.rs":"b3c59583eb64b0b5a246444456d03cf52d51bcdc08885023600dbb44fd87e5f2","tests/ui/transparent-display.stderr":"16d538914e0d92026bde4b4bec75660217da9ecc6b621d12d2eb81d33ed1d1da","tests/ui/transparent-enum-many.rs":"2a40a764fb4683bff57973eec61507a6c00f7d4d7a32da6e7bd0190c2e445434","tests/ui/transparent-enum-many.stderr":"f1d78c1d6d8edbef153420db4fb9ca3dc6076fa043b5b1bc0cd291daa417a3ea","tests/ui/transparent-enum-not-error.rs":"f6315993e68bc71d6d4d39afa4d059695308ef785f92cc0d1df3e9ff55be2a9a","tests/ui/transparent-enum-not-error.stderr":"3a5fe056cd4566f402b03cb591394e0ba85bd74da53df3c8d50bda4a05c2e5ba","tests/ui/transparent-enum-source.rs":"18f606a98ac0a53f08dc56f5f923b9cbe75d25ed34479c777b48dac305d5968c","tests/ui/transparent-enum-source.stderr":"1b2e0ac53951034575d43ec0396c4e2b3cfb272db2aef8d6baa13a7e1632cc84","tests/ui/transparent-enum-unnamed-field-not-error.rs":"0c720567e9e0f87921055dfa9f607661725377633445e01a4b5048c7a7a50a85","tests/ui/transparent-enum-unnamed-field-not-error.stderr":"6d84e9a7f4e88daba12931a6c1508be60bb19125d06e44fa2fa205126d953bb1","tests/ui/transparent-struct-many.rs":"72c6b6c1a44c203d3bc68989b2f1ec092531ef75b745432824c3776c290326f6","tests/ui/transparent-struct-many.stderr":"7bd0536dbb54a0ce7d4a8e66ca7624a1b132d8a1d1e4fecca642ec77494ac01c","tests/ui/transparent-struct-not-error.rs":"fd814d3141c9182b1267b558d9daef8dd6e8b6462e1ad42b197f3a1c0703dce2","tests/ui/transparent-struct-not-error.stderr":"ac7634ea72096d8a5c1a91fd4f1b45ef870130a2698d9ae7c6530cec2f9799d5","tests/ui/transparent-struct-source.rs":"863fa691ed7d27e8767da58d9ee11fd40d6642274b36338ca1074c07964ea2b3","tests/ui/transparent-struct-source.stderr":"267dab65929e67d32347fb467a00b43af931f8205d727d7671938580217fc70e","tests/ui/transparent-struct-unnamed-field-not-error.rs":"fbff5874be44a5dcc347693d7929537256b187dfec467ed72c9968c095228d8d","tests/ui/transparent-struct-unnamed-field-not-error.stderr":"ea99d5422348c2588ad7374360e2a24649f040b9c5614c9308eff958f61960ec","tests/ui/unexpected-field-fmt.rs":"29fba7b4d81c642ec8e47cfe053aa515acf9080a86d65e685363a48993becfe3","tests/ui/unexpected-field-fmt.stderr":"20731c4a08af04bed3ff513903adadd690b6bc532b15604557e7f25575a8338f","tests/ui/unexpected-struct-source.rs":"c6cbe882d622635c216feb8290b1bd536ce0ec4feee16bc087667a21b3641d5c","tests/ui/unexpected-struct-source.stderr":"7c8227513478f6cc09e8a28be337c8a0e758a06ca5978d774c91bd43c4a54043","tests/ui/union.rs":"331adff27cebd8b95b03b6742cc8247331fda1f961e1590ed39c8d39f50cf1d8","tests/ui/union.stderr":"5f67ad29753d6fb14bc03aef7d4a1f660ee7796e469c037efbf8b13456934ad3"},"package":"f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"} \ No newline at end of file diff --git a/third_party/rust/thiserror/Cargo.toml b/third_party/rust/thiserror/Cargo.toml index bb7315063cc2..b22f808e28ec 100644 --- a/third_party/rust/thiserror/Cargo.toml +++ b/third_party/rust/thiserror/Cargo.toml @@ -13,7 +13,7 @@ edition = "2021" rust-version = "1.56" name = "thiserror" -version = "1.0.57" +version = "1.0.59" authors = ["David Tolnay "] description = "derive(Error)" documentation = "https://docs.rs/thiserror" @@ -32,7 +32,7 @@ rustdoc-args = ["--generate-link-to-definition"] targets = ["x86_64-unknown-linux-gnu"] [dependencies.thiserror-impl] -version = "=1.0.57" +version = "=1.0.59" [dev-dependencies.anyhow] version = "1.0.73" diff --git a/third_party/rust/thiserror/build.rs b/third_party/rust/thiserror/build.rs index 0b995d8ea088..ad42f256f59c 100644 --- a/third_party/rust/thiserror/build.rs +++ b/third_party/rust/thiserror/build.rs @@ -1,5 +1,6 @@ use std::env; use std::ffi::OsString; +use std::iter; use std::path::Path; use std::process::{self, Command, Stdio}; @@ -66,15 +67,15 @@ fn compile_probe(rustc_bootstrap: bool) -> bool { let out_dir = cargo_env_var("OUT_DIR"); let probefile = Path::new("build").join("probe.rs"); - // Make sure to pick up Cargo rustc configuration. - let mut cmd = if let Some(wrapper) = env::var_os("RUSTC_WRAPPER") { - let mut cmd = Command::new(wrapper); - // The wrapper's first argument is supposed to be the path to rustc. - cmd.arg(rustc); - cmd - } else { - Command::new(rustc) - }; + let rustc_wrapper = env::var_os("RUSTC_WRAPPER").filter(|wrapper| !wrapper.is_empty()); + let rustc_workspace_wrapper = + env::var_os("RUSTC_WORKSPACE_WRAPPER").filter(|wrapper| !wrapper.is_empty()); + let mut rustc = rustc_wrapper + .into_iter() + .chain(rustc_workspace_wrapper) + .chain(iter::once(rustc)); + let mut cmd = Command::new(rustc.next().unwrap()); + cmd.args(rustc); if !rustc_bootstrap { cmd.env_remove("RUSTC_BOOTSTRAP"); @@ -84,6 +85,7 @@ fn compile_probe(rustc_bootstrap: bool) -> bool { .arg("--edition=2018") .arg("--crate-name=thiserror") .arg("--crate-type=lib") + .arg("--cap-lints=allow") .arg("--emit=dep-info,metadata") .arg("--out-dir") .arg(out_dir) diff --git a/third_party/rust/thiserror/src/lib.rs b/third_party/rust/thiserror/src/lib.rs index 717cdc6f1993..5b07dca60047 100644 --- a/third_party/rust/thiserror/src/lib.rs +++ b/third_party/rust/thiserror/src/lib.rs @@ -228,7 +228,7 @@ //! //! [`anyhow`]: https://github.com/dtolnay/anyhow -#![doc(html_root_url = "https://docs.rs/thiserror/1.0.57")] +#![doc(html_root_url = "https://docs.rs/thiserror/1.0.59")] #![allow( clippy::module_name_repetitions, clippy::needless_lifetimes, diff --git a/third_party/rust/thiserror/tests/test_lints.rs b/third_party/rust/thiserror/tests/test_lints.rs index 59699a4a3f40..cafcbc0f3607 100644 --- a/third_party/rust/thiserror/tests/test_lints.rs +++ b/third_party/rust/thiserror/tests/test_lints.rs @@ -1,3 +1,5 @@ +#![allow(clippy::mixed_attributes_style)] + use thiserror::Error; pub use std::error::Error; diff --git a/third_party/rust/wgpu-core/.cargo-checksum.json b/third_party/rust/wgpu-core/.cargo-checksum.json index 6f13509d0cc0..a1c4ff80eda7 100644 --- a/third_party/rust/wgpu-core/.cargo-checksum.json +++ b/third_party/rust/wgpu-core/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"e8335a4d3544795505ee88baaeba2d8974250deed141053b58c9bfcd8ee3b178","LICENSE.APACHE":"a6cba85bc92e0cff7a450b1d873c0eaa2e9fc96bf472df0247a26bec77bf3ff9","LICENSE.MIT":"c7fea58d1cfe49634cd92e54fc10a9d871f4b275321a4cd8c09e449122caaeb4","build.rs":"a99478d7f63fb41429e3834f4d0e5cd333f94ba1834c68295f929170e16987de","src/any_surface.rs":"1c032bc1894a222a47f0116b976f1543c1140c0534678502ee1172d4f77fc515","src/binding_model.rs":"f1279d3cd1f84eab37dc85658f32bb4b4f2687c9086f4b4f30e8a4b0d7c1a582","src/command/allocator.rs":"84175a93fce633749099f2b2d1af940a99e63dfb85684d2ade2ad2e466248f06","src/command/bind.rs":"a37f042484b65d9fdea4cdab3667381623ee9a8943a6d32683d410b92736d306","src/command/bundle.rs":"3435ea21daba6f5a26f9a4158b342d0b9a1839da39b82fa8c23d84ee144b9da0","src/command/clear.rs":"1eb475a48e04a011be381720a420047a3d65fc85be3b9b55e6874c7fd14e40a8","src/command/compute.rs":"c75136ad95868b08e8307402501fba65853e95081477906498db5a0ed95cacc9","src/command/draw.rs":"15f9ad857504d8098279f9c789317feba321c9b6b8f0de20b8ba98f358c99d89","src/command/memory_init.rs":"71550dabbf7cc3c3ff6aa4ccd31af080bb5e1cb1e21422daea63fee30294476f","src/command/mod.rs":"bf90e6204a1e036ba70c8d26aeafe4bbc42e6aaf24304f497b25caf23cd3f586","src/command/query.rs":"92b5aff8580631c51bc1ba72a45605e704c997684fc6a891640da945712db5ec","src/command/render.rs":"fff69503d51074b600c2e912ed1fc537b7b52c3defe9f741033d0b1ebe8cf080","src/command/transfer.rs":"d0324465a5637e8346276a0427446377c21acbb285ff819091673ba5fc365a9c","src/conv.rs":"7e3ffe33b47a6fd3617aabf9f11cc68f1ccbee2c7343b8dbbcd0e8f3447e1ad8","src/device/any_device.rs":"65f47b58939b60f88f47861e65d5d45209492df8e73e7c1b60b3b459f510c09e","src/device/bgl.rs":"ec8bdd6e9b4cd50c25bed317275863d0c16bb6619f62ed85bf0464948010dfc1","src/device/global.rs":"4fc9422dfa8ef86e2fd270e00f6306a3710040f35c2fe1ccff7bf7047d5b7848","src/device/life.rs":"296df4c9329ba311c787acf98433ef8cc4a02ca7088890903c31a2249e4b9092","src/device/mod.rs":"aa16ac918714c844820142b4d321ac4e9a51ffef37501c6f5ca48e3817353d16","src/device/queue.rs":"94e73d3365d59c2ab0efef720fc4e72d92141656668c78ec66ed9258b370c156","src/device/resource.rs":"c1ee13bddf7ca512a48a8f1353fb7cb565570e76f9e67785559def5f1269aa2e","src/device/trace.rs":"9deb1b083165e07253b4928ac2f564aba06f9089c3aca1c0a1d438d87d981542","src/error.rs":"e3b6b7a69877437f4e46af7f0e8ca1db1822beae7c8448db41c2bae0f64b2bb4","src/global.rs":"fe1ddd4863d50568780bf04382a4fd0d3d8441dd7baff9dacf57e860811b87c9","src/hal_api.rs":"1cd9c3fe1c9d8c3a24e3e7f963a2ef26e056a2b26d529b840dbc969090aaf201","src/hash_utils.rs":"e8d484027c7ce81978e4679a5e20af9416ab7d2fa595f1ca95992b29d625b0ca","src/hub.rs":"76db944db7e1e0880373acb6f22cd72d2bf232735e94be706c4f592605243cf8","src/id.rs":"23634dec36eb171cb95c672519e69705d466044dcea29028b58d2288de35f8db","src/identity.rs":"12b820eb4b8bd7b226e15eec97d0f100a695f6b9be7acd79ad2421f2d0fe1985","src/init_tracker/buffer.rs":"61eb9cfaa312135b7a937ff6a3117f531b5b7323fae6553a41d6de9bc106d7e0","src/init_tracker/mod.rs":"a0f64730cc025113b656b4690f9dcb0ec18b8770bc7ef24c7b4ad8bebae03d24","src/init_tracker/texture.rs":"030fd594bf9948fad391390d85c5e1fec7eaf67b6e812c60f2dd59bc4fda8fd5","src/instance.rs":"f1bf67d94ca06f852bc099aa03a09da54a2d1a7f3220a6d8c614266105d2c1fe","src/lib.rs":"306d3917050546e2dc5c07ff96639e42030a1a12d309117442b3cd12dbb06858","src/pipeline.rs":"25ee442167c7c66162d82a1cfccea3248410d7fedd3cd714b985f99f457cf548","src/pool.rs":"778ea1c23fcfaaa5001606e686f712f606826039d60dd5a3cd26e7de91ac057a","src/present.rs":"5ff66db46055d25d576e6ca9d4e169c9abd01662bde1b10f202c4c22d3a71c48","src/registry.rs":"b7fbf6cb40b2664777896633eac5e1bafe364739d01c136acd18da2d65f1433a","src/resource.rs":"45e8fb8753fbcd164cf07b5c7287ddcc815d7fb3385873712c8ca7222d2bc0cd","src/snatch.rs":"5cf0e4e4611083e8256092696ecf0caa9e855dd680c18fc7dbb227d071aa2548","src/storage.rs":"0c5a8a732e33ea565528b3a02e7a6c15178bc8dbc49a9cedcd76f8ebb1039b48","src/track/buffer.rs":"d1b4c85dfaf1bcc93013d7f51ba677f97c36245c9de224fb328595aa15109cf6","src/track/metadata.rs":"7016911136bc5b97053f54241b01d344f5d65c4337a292c8aa32bb142a26be0c","src/track/mod.rs":"5365c532a531d224a958bd8217769ef59d67d293b4f95972c10db71f6bff1a80","src/track/range.rs":"2a15794e79b0470d5ba6b3267173a42f34312878e1cb288f198d2854a7888e53","src/track/stateless.rs":"305e0a493fb1cd0a325274c0757e99c19f9d14deaa8ca11ada41c1399a4ae5c4","src/track/texture.rs":"da83403d5990021c5db78f1ffdf69198eadb99cc77a6bc481648337a5403295c","src/validation.rs":"1433e035d656afda97ee047b3247cb1a63844360174d575acf52cac868e27a3c"},"package":null} \ No newline at end of file +{"files":{"Cargo.toml":"e8335a4d3544795505ee88baaeba2d8974250deed141053b58c9bfcd8ee3b178","LICENSE.APACHE":"a6cba85bc92e0cff7a450b1d873c0eaa2e9fc96bf472df0247a26bec77bf3ff9","LICENSE.MIT":"c7fea58d1cfe49634cd92e54fc10a9d871f4b275321a4cd8c09e449122caaeb4","build.rs":"a99478d7f63fb41429e3834f4d0e5cd333f94ba1834c68295f929170e16987de","src/binding_model.rs":"f1279d3cd1f84eab37dc85658f32bb4b4f2687c9086f4b4f30e8a4b0d7c1a582","src/command/allocator.rs":"5ca1e40a735f7cb0531d3e5298767963a3c0ee9e264b44d3a356cd7ef16bcb52","src/command/bind.rs":"a37f042484b65d9fdea4cdab3667381623ee9a8943a6d32683d410b92736d306","src/command/bundle.rs":"1c7fceda77668ae5a055bf1d0184b78cc7362f7763d6b6a3c9d1687e4782f908","src/command/clear.rs":"1eb475a48e04a011be381720a420047a3d65fc85be3b9b55e6874c7fd14e40a8","src/command/compute.rs":"7a58ff8f492dc8926ab8cd580c7ae8bf8703df4472f093f4a027f4969f55b0f9","src/command/compute_command.rs":"b00623d80e9aa3bb78c1d8d24ccbc0cbd6f945ef3c9206b8fba5c3ce86753f5e","src/command/draw.rs":"15f9ad857504d8098279f9c789317feba321c9b6b8f0de20b8ba98f358c99d89","src/command/memory_init.rs":"71550dabbf7cc3c3ff6aa4ccd31af080bb5e1cb1e21422daea63fee30294476f","src/command/mod.rs":"947c0dc1e82301e5571579031f0b1b0627d1f6d9c8d3b5e510c37673ea661fc1","src/command/query.rs":"92b5aff8580631c51bc1ba72a45605e704c997684fc6a891640da945712db5ec","src/command/render.rs":"0d529644fe35bfb66aefe2e62ddd2c45adc620c5d5154abf7660e4b1f370fcee","src/command/transfer.rs":"d0324465a5637e8346276a0427446377c21acbb285ff819091673ba5fc365a9c","src/conv.rs":"7e3ffe33b47a6fd3617aabf9f11cc68f1ccbee2c7343b8dbbcd0e8f3447e1ad8","src/device/any_device.rs":"65f47b58939b60f88f47861e65d5d45209492df8e73e7c1b60b3b459f510c09e","src/device/bgl.rs":"f1c372cd632deacb9d0f0880846844c7cbe5f1ca88592ed35dbd59966958b33d","src/device/global.rs":"791faa82517e5eef501d7d77128d8cfaa2b99536b85c2e1c06739e97a3ff391c","src/device/life.rs":"a1d6a62c058b4626c9ed8c20c7bf8dacefe03bbf568e1fc0757fb7914bb07d40","src/device/mod.rs":"aa16ac918714c844820142b4d321ac4e9a51ffef37501c6f5ca48e3817353d16","src/device/queue.rs":"2c8f0a7c39f4b050526c895aa53fb1417c64ea7c018ff1a44c2c7715a77c6c1d","src/device/resource.rs":"207e823354c0077402838c7531bc9fcec75638474d2a870ab4333ffabaa15de2","src/device/trace.rs":"9deb1b083165e07253b4928ac2f564aba06f9089c3aca1c0a1d438d87d981542","src/error.rs":"e3b6b7a69877437f4e46af7f0e8ca1db1822beae7c8448db41c2bae0f64b2bb4","src/global.rs":"fe1ddd4863d50568780bf04382a4fd0d3d8441dd7baff9dacf57e860811b87c9","src/hal_api.rs":"fb65bfab0334cb8b0bbe823b1da6d1e82cd4a312c60a332ce65df9fbc2f74482","src/hash_utils.rs":"e8d484027c7ce81978e4679a5e20af9416ab7d2fa595f1ca95992b29d625b0ca","src/hub.rs":"59aeb5c902fd6707f651994fc9e335a6e7fdd998faebd29c087171e226101405","src/id.rs":"23634dec36eb171cb95c672519e69705d466044dcea29028b58d2288de35f8db","src/identity.rs":"b27d4e06b1f6c25ca2f4ad276fdf8c09a5d71f890b06cbabef7ef62369cb4df6","src/init_tracker/buffer.rs":"61eb9cfaa312135b7a937ff6a3117f531b5b7323fae6553a41d6de9bc106d7e0","src/init_tracker/mod.rs":"a0f64730cc025113b656b4690f9dcb0ec18b8770bc7ef24c7b4ad8bebae03d24","src/init_tracker/texture.rs":"030fd594bf9948fad391390d85c5e1fec7eaf67b6e812c60f2dd59bc4fda8fd5","src/instance.rs":"d4c46ff5d0cc13b09c7b364d6445d30eaf7ea6f50ac9d49b0022b3a6e9377445","src/lib.rs":"77ec01c43b6f5daab174e0831bd98771a708cdfd42b0203f45490b6977ef2923","src/lock/mod.rs":"d7ae9e2dda2d6f6732abe5ce784300708945d911697893522997bb04141decf8","src/lock/rank.rs":"cebf4d1063e2c0bee5015ffaf147f20d108ef4786d9a30acd315b7d0585a3abe","src/lock/ranked.rs":"783283c6152465f555778c51fda0e0c8df84d3e5dedce2fa6d5142dd7a3109c2","src/lock/vanilla.rs":"6db2fbc41ef4abae4700df33e28e74160bce4ea59fad2887d0613e6d5769444d","src/pipeline.rs":"c7a70b5c6323bcedf7cb0ad431a1f22c2d797084ccf5247f015ba398f821e6e3","src/pool.rs":"7899e74874da17c83ec39a88b360de12f564ef4bee2bb1240c37becdaeb57a86","src/present.rs":"a0142445b0ccaebdd097f24f063df9d8306583dbe2e434c8b478a706a89de4d3","src/registry.rs":"1a65f9a3b2a23476a5fa2f0a826d690853c29b80b512e364fbb8374a31999dcf","src/resource.rs":"90d36c359cec532f5955bd3a60dd59fc9754bf27c08e9099a08010c1ea984322","src/snatch.rs":"d5f3d512ae1148c0d63bb9161e643e97ae3097675cb9c75e72635ec55e650c15","src/storage.rs":"0c5a8a732e33ea565528b3a02e7a6c15178bc8dbc49a9cedcd76f8ebb1039b48","src/track/buffer.rs":"8571ebd57302ab9aba4aef4a310a02fe0848485f57ac3a7197393fbfbaddff2e","src/track/metadata.rs":"4b85341adc3b725e326dec0fe691f7e8e6c4e7c0a1ada1d86dd72a0a0b6397e6","src/track/mod.rs":"4d4ebbec98f4d2148767b34240b813d2b2978b52006100f69f71a90e0b584564","src/track/range.rs":"2a15794e79b0470d5ba6b3267173a42f34312878e1cb288f198d2854a7888e53","src/track/stateless.rs":"b49192d248434570c024078cf204ad47f9030ed7a541324bad525881b78f75a4","src/track/texture.rs":"f962f97b582d4b528483f09df8662484159b6f5d19b376de53462d411421cee5","src/validation.rs":"1433e035d656afda97ee047b3247cb1a63844360174d575acf52cac868e27a3c"},"package":null} \ No newline at end of file diff --git a/third_party/rust/wgpu-core/src/any_surface.rs b/third_party/rust/wgpu-core/src/any_surface.rs deleted file mode 100644 index 94edfc44339a..000000000000 --- a/third_party/rust/wgpu-core/src/any_surface.rs +++ /dev/null @@ -1,95 +0,0 @@ -use wgt::Backend; - -/// The `AnySurface` type: a `Arc` of a `A::Surface` for any backend `A`. -use crate::hal_api::HalApi; - -use std::fmt; -use std::mem::ManuallyDrop; -use std::ptr::NonNull; - -struct AnySurfaceVtable { - // We oppurtunistically store the backend here, since we now it will be used - // with backend selection and it can be stored in static memory. - backend: Backend, - // Drop glue which knows how to drop the stored data. - drop: unsafe fn(*mut ()), -} - -/// An `A::Surface`, for any backend `A`. -/// -/// Any `AnySurface` is just like an `A::Surface`, except that the `A` type -/// parameter is erased. To access the `Surface`, you must downcast to a -/// particular backend with the \[`downcast_ref`\] or \[`take`\] methods. -pub struct AnySurface { - data: NonNull<()>, - vtable: &'static AnySurfaceVtable, -} - -impl AnySurface { - /// Construct an `AnySurface` that owns an `A::Surface`. - pub fn new(surface: A::Surface) -> AnySurface { - unsafe fn drop_glue(ptr: *mut ()) { - unsafe { - _ = Box::from_raw(ptr.cast::()); - } - } - - let data = NonNull::from(Box::leak(Box::new(surface))); - - AnySurface { - data: data.cast(), - vtable: &AnySurfaceVtable { - backend: A::VARIANT, - drop: drop_glue::, - }, - } - } - - /// Get the backend this surface was created through. - pub fn backend(&self) -> Backend { - self.vtable.backend - } - - /// If `self` refers to an `A::Surface`, returns a reference to it. - pub fn downcast_ref(&self) -> Option<&A::Surface> { - if A::VARIANT != self.vtable.backend { - return None; - } - - // SAFETY: We just checked the instance above implicitly by the backend - // that it was statically constructed through. - Some(unsafe { &*self.data.as_ptr().cast::() }) - } - - /// If `self` is an `Arc`, returns that. - pub fn take(self) -> Option { - if A::VARIANT != self.vtable.backend { - return None; - } - - // Disable drop glue, since we're returning the owned surface. The - // caller will be responsible for dropping it. - let this = ManuallyDrop::new(self); - - // SAFETY: We just checked the instance above implicitly by the backend - // that it was statically constructed through. - Some(unsafe { *Box::from_raw(this.data.as_ptr().cast::()) }) - } -} - -impl Drop for AnySurface { - fn drop(&mut self) { - unsafe { (self.vtable.drop)(self.data.as_ptr()) } - } -} - -impl fmt::Debug for AnySurface { - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - write!(f, "AnySurface<{}>", self.vtable.backend) - } -} - -#[cfg(send_sync)] -unsafe impl Send for AnySurface {} -#[cfg(send_sync)] -unsafe impl Sync for AnySurface {} diff --git a/third_party/rust/wgpu-core/src/command/allocator.rs b/third_party/rust/wgpu-core/src/command/allocator.rs index f058905e35fc..e17fd08d76db 100644 --- a/third_party/rust/wgpu-core/src/command/allocator.rs +++ b/third_party/rust/wgpu-core/src/command/allocator.rs @@ -2,7 +2,7 @@ use crate::hal_api::HalApi; use crate::resource_log; use hal::Device as _; -use parking_lot::Mutex; +use crate::lock::{rank, Mutex}; /// A pool of free [`wgpu_hal::CommandEncoder`]s, owned by a `Device`. /// @@ -11,8 +11,9 @@ use parking_lot::Mutex; /// Since a raw [`CommandEncoder`][ce] is itself a pool for allocating /// raw [`CommandBuffer`][cb]s, this is a pool of pools. /// -/// [ce]: wgpu_hal::CommandEncoder -/// [cb]: wgpu_hal::Api::CommandBuffer +/// [`wgpu_hal::CommandEncoder`]: hal::CommandEncoder +/// [ce]: hal::CommandEncoder +/// [cb]: hal::Api::CommandBuffer pub(crate) struct CommandAllocator { free_encoders: Mutex>, } @@ -20,7 +21,7 @@ pub(crate) struct CommandAllocator { impl CommandAllocator { pub(crate) fn new() -> Self { Self { - free_encoders: Mutex::new(Vec::new()), + free_encoders: Mutex::new(rank::COMMAND_ALLOCATOR_FREE_ENCODERS, Vec::new()), } } @@ -28,6 +29,8 @@ impl CommandAllocator { /// /// If we have free encoders in the pool, take one of those. Otherwise, /// create a new one on `device`. + /// + /// [`wgpu_hal::CommandEncoder`]: hal::CommandEncoder pub(crate) fn acquire_encoder( &self, device: &A::Device, diff --git a/third_party/rust/wgpu-core/src/command/bundle.rs b/third_party/rust/wgpu-core/src/command/bundle.rs index 47beda8ec650..d9d821c533d6 100644 --- a/third_party/rust/wgpu-core/src/command/bundle.rs +++ b/third_party/rust/wgpu-core/src/command/bundle.rs @@ -73,7 +73,7 @@ index format changes. [Gdcrbe]: crate::global::Global::device_create_render_bundle_encoder [Grbef]: crate::global::Global::render_bundle_encoder_finish -[wrpeb]: crate::command::render_ffi::wgpu_render_pass_execute_bundles +[wrpeb]: crate::command::render::render_commands::wgpu_render_pass_execute_bundles !*/ #![allow(clippy::reversed_empty_ranges)] @@ -113,7 +113,7 @@ use hal::CommandEncoder as _; use super::ArcRenderCommand; -/// https://gpuweb.github.io/gpuweb/#dom-gpurendercommandsmixin-draw +/// fn validate_draw( vertex: &[Option>], step: &[VertexStep], @@ -1548,15 +1548,14 @@ pub mod bundle_ffi { offsets: *const DynamicOffset, offset_length: usize, ) { - let redundant = unsafe { - bundle.current_bind_groups.set_and_check_redundant( - bind_group_id, - index, - &mut bundle.base.dynamic_offsets, - offsets, - offset_length, - ) - }; + let offsets = unsafe { slice::from_raw_parts(offsets, offset_length) }; + + let redundant = bundle.current_bind_groups.set_and_check_redundant( + bind_group_id, + index, + &mut bundle.base.dynamic_offsets, + offsets, + ); if redundant { return; diff --git a/third_party/rust/wgpu-core/src/command/compute.rs b/third_party/rust/wgpu-core/src/command/compute.rs index 98f4360a653b..4ee48f0086b4 100644 --- a/third_party/rust/wgpu-core/src/command/compute.rs +++ b/third_party/rust/wgpu-core/src/command/compute.rs @@ -1,3 +1,4 @@ +use crate::command::compute_command::{ArcComputeCommand, ComputeCommand}; use crate::device::DeviceError; use crate::resource::Resource; use crate::snatch::SnatchGuard; @@ -20,7 +21,6 @@ use crate::{ hal_label, id, id::DeviceId, init_tracker::MemoryInitKind, - pipeline, resource::{self}, storage::Storage, track::{Tracker, UsageConflict, UsageScope}, @@ -39,59 +39,6 @@ use thiserror::Error; use std::sync::Arc; use std::{fmt, mem, str}; -#[doc(hidden)] -#[derive(Clone, Copy, Debug)] -#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] -pub enum ComputeCommand { - SetBindGroup { - index: u32, - num_dynamic_offsets: usize, - bind_group_id: id::BindGroupId, - }, - SetPipeline(id::ComputePipelineId), - - /// Set a range of push constants to values stored in [`BasePass::push_constant_data`]. - SetPushConstant { - /// The byte offset within the push constant storage to write to. This - /// must be a multiple of four. - offset: u32, - - /// The number of bytes to write. This must be a multiple of four. - size_bytes: u32, - - /// Index in [`BasePass::push_constant_data`] of the start of the data - /// to be written. - /// - /// Note: this is not a byte offset like `offset`. Rather, it is the - /// index of the first `u32` element in `push_constant_data` to read. - values_offset: u32, - }, - - Dispatch([u32; 3]), - DispatchIndirect { - buffer_id: id::BufferId, - offset: wgt::BufferAddress, - }, - PushDebugGroup { - color: u32, - len: usize, - }, - PopDebugGroup, - InsertDebugMarker { - color: u32, - len: usize, - }, - WriteTimestamp { - query_set_id: id::QuerySetId, - query_index: u32, - }, - BeginPipelineStatisticsQuery { - query_set_id: id::QuerySetId, - query_index: u32, - }, - EndPipelineStatisticsQuery, -} - #[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))] pub struct ComputePass { base: BasePass, @@ -185,7 +132,7 @@ pub enum ComputePassErrorInner { #[error(transparent)] Encoder(#[from] CommandEncoderError), #[error("Bind group at index {0:?} is invalid")] - InvalidBindGroup(usize), + InvalidBindGroup(u32), #[error("Device {0:?} is invalid")] InvalidDevice(DeviceId), #[error("Bind group index {index} is greater than the device's requested `max_bind_group` limit {max}")] @@ -250,7 +197,7 @@ impl PrettyError for ComputePassErrorInner { pub struct ComputePassError { pub scope: PassErrorScope, #[source] - inner: ComputePassErrorInner, + pub(super) inner: ComputePassErrorInner, } impl PrettyError for ComputePassError { fn fmt_pretty(&self, fmt: &mut ErrorFormatter) { @@ -347,7 +294,8 @@ impl Global { encoder_id: id::CommandEncoderId, pass: &ComputePass, ) -> Result<(), ComputePassError> { - self.command_encoder_run_compute_pass_impl::( + // TODO: This should go directly to `command_encoder_run_compute_pass_impl` by means of storing `ArcComputeCommand` internally. + self.command_encoder_run_compute_pass_with_unresolved_commands::( encoder_id, pass.base.as_ref(), pass.timestamp_writes.as_ref(), @@ -355,11 +303,33 @@ impl Global { } #[doc(hidden)] - pub fn command_encoder_run_compute_pass_impl( + pub fn command_encoder_run_compute_pass_with_unresolved_commands( &self, encoder_id: id::CommandEncoderId, base: BasePassRef, timestamp_writes: Option<&ComputePassTimestampWrites>, + ) -> Result<(), ComputePassError> { + let resolved_commands = + ComputeCommand::resolve_compute_command_ids(A::hub(self), base.commands)?; + + self.command_encoder_run_compute_pass_impl::( + encoder_id, + BasePassRef { + label: base.label, + commands: &resolved_commands, + dynamic_offsets: base.dynamic_offsets, + string_data: base.string_data, + push_constant_data: base.push_constant_data, + }, + timestamp_writes, + ) + } + + fn command_encoder_run_compute_pass_impl( + &self, + encoder_id: id::CommandEncoderId, + base: BasePassRef>, + timestamp_writes: Option<&ComputePassTimestampWrites>, ) -> Result<(), ComputePassError> { profiling::scope!("CommandEncoder::run_compute_pass"); let pass_scope = PassErrorScope::Pass(encoder_id); @@ -382,7 +352,13 @@ impl Global { #[cfg(feature = "trace")] if let Some(ref mut list) = cmd_buf_data.commands { list.push(crate::device::trace::Command::RunComputePass { - base: BasePass::from_ref(base), + base: BasePass { + label: base.label.map(str::to_string), + commands: base.commands.iter().map(Into::into).collect(), + dynamic_offsets: base.dynamic_offsets.to_vec(), + string_data: base.string_data.to_vec(), + push_constant_data: base.push_constant_data.to_vec(), + }, timestamp_writes: timestamp_writes.cloned(), }); } @@ -402,9 +378,7 @@ impl Global { let raw = encoder.open().map_pass_err(pass_scope)?; let bind_group_guard = hub.bind_groups.read(); - let pipeline_guard = hub.compute_pipelines.read(); let query_set_guard = hub.query_sets.read(); - let buffer_guard = hub.buffers.read(); let mut state = State { binder: Binder::new(), @@ -482,19 +456,21 @@ impl Global { // be inserted before texture reads. let mut pending_discard_init_fixups = SurfacesInDiscardState::new(); + // TODO: We should be draining the commands here, avoiding extra copies in the process. + // (A command encoder can't be executed twice!) for command in base.commands { - match *command { - ComputeCommand::SetBindGroup { + match command { + ArcComputeCommand::SetBindGroup { index, num_dynamic_offsets, - bind_group_id, + bind_group, } => { - let scope = PassErrorScope::SetBindGroup(bind_group_id); + let scope = PassErrorScope::SetBindGroup(bind_group.as_info().id()); let max_bind_groups = cmd_buf.limits.max_bind_groups; - if index >= max_bind_groups { + if index >= &max_bind_groups { return Err(ComputePassErrorInner::BindGroupIndexOutOfRange { - index, + index: *index, max: max_bind_groups, }) .map_pass_err(scope); @@ -507,13 +483,9 @@ impl Global { ); dynamic_offset_count += num_dynamic_offsets; - let bind_group = tracker - .bind_groups - .add_single(&*bind_group_guard, bind_group_id) - .ok_or(ComputePassErrorInner::InvalidBindGroup(index as usize)) - .map_pass_err(scope)?; + let bind_group = tracker.bind_groups.insert_single(bind_group.clone()); bind_group - .validate_dynamic_bindings(index, &temp_offsets, &cmd_buf.limits) + .validate_dynamic_bindings(*index, &temp_offsets, &cmd_buf.limits) .map_pass_err(scope)?; buffer_memory_init_actions.extend( @@ -535,14 +507,14 @@ impl Global { let entries = state .binder - .assign_group(index as usize, bind_group, &temp_offsets); + .assign_group(*index as usize, bind_group, &temp_offsets); if !entries.is_empty() && pipeline_layout.is_some() { let pipeline_layout = pipeline_layout.as_ref().unwrap().raw(); for (i, e) in entries.iter().enumerate() { if let Some(group) = e.group.as_ref() { let raw_bg = group .raw(&snatch_guard) - .ok_or(ComputePassErrorInner::InvalidBindGroup(i)) + .ok_or(ComputePassErrorInner::InvalidBindGroup(i as u32)) .map_pass_err(scope)?; unsafe { raw.set_bind_group( @@ -556,16 +528,13 @@ impl Global { } } } - ComputeCommand::SetPipeline(pipeline_id) => { + ArcComputeCommand::SetPipeline(pipeline) => { + let pipeline_id = pipeline.as_info().id(); let scope = PassErrorScope::SetPipelineCompute(pipeline_id); state.pipeline = Some(pipeline_id); - let pipeline: &pipeline::ComputePipeline = tracker - .compute_pipelines - .add_single(&*pipeline_guard, pipeline_id) - .ok_or(ComputePassErrorInner::InvalidPipeline(pipeline_id)) - .map_pass_err(scope)?; + tracker.compute_pipelines.insert_single(pipeline.clone()); unsafe { raw.set_compute_pipeline(pipeline.raw()); @@ -589,7 +558,7 @@ impl Global { if let Some(group) = e.group.as_ref() { let raw_bg = group .raw(&snatch_guard) - .ok_or(ComputePassErrorInner::InvalidBindGroup(i)) + .ok_or(ComputePassErrorInner::InvalidBindGroup(i as u32)) .map_pass_err(scope)?; unsafe { raw.set_bind_group( @@ -625,7 +594,7 @@ impl Global { } } } - ComputeCommand::SetPushConstant { + ArcComputeCommand::SetPushConstant { offset, size_bytes, values_offset, @@ -636,7 +605,7 @@ impl Global { let values_end_offset = (values_offset + size_bytes / wgt::PUSH_CONSTANT_ALIGNMENT) as usize; let data_slice = - &base.push_constant_data[(values_offset as usize)..values_end_offset]; + &base.push_constant_data[(*values_offset as usize)..values_end_offset]; let pipeline_layout = state .binder @@ -651,7 +620,7 @@ impl Global { pipeline_layout .validate_push_constant_ranges( wgt::ShaderStages::COMPUTE, - offset, + *offset, end_offset_bytes, ) .map_pass_err(scope)?; @@ -660,12 +629,12 @@ impl Global { raw.set_push_constants( pipeline_layout.raw(), wgt::ShaderStages::COMPUTE, - offset, + *offset, data_slice, ); } } - ComputeCommand::Dispatch(groups) => { + ArcComputeCommand::Dispatch(groups) => { let scope = PassErrorScope::Dispatch { indirect: false, pipeline: state.pipeline, @@ -690,7 +659,7 @@ impl Global { { return Err(ComputePassErrorInner::Dispatch( DispatchError::InvalidGroupSize { - current: groups, + current: *groups, limit: groups_size_limit, }, )) @@ -698,10 +667,11 @@ impl Global { } unsafe { - raw.dispatch(groups); + raw.dispatch(*groups); } } - ComputeCommand::DispatchIndirect { buffer_id, offset } => { + ArcComputeCommand::DispatchIndirect { buffer, offset } => { + let buffer_id = buffer.as_info().id(); let scope = PassErrorScope::Dispatch { indirect: true, pipeline: state.pipeline, @@ -713,29 +683,25 @@ impl Global { .require_downlevel_flags(wgt::DownlevelFlags::INDIRECT_EXECUTION) .map_pass_err(scope)?; - let indirect_buffer = state + state .scope .buffers - .merge_single(&*buffer_guard, buffer_id, hal::BufferUses::INDIRECT) + .insert_merge_single(buffer.clone(), hal::BufferUses::INDIRECT) + .map_pass_err(scope)?; + check_buffer_usage(buffer_id, buffer.usage, wgt::BufferUsages::INDIRECT) .map_pass_err(scope)?; - check_buffer_usage( - buffer_id, - indirect_buffer.usage, - wgt::BufferUsages::INDIRECT, - ) - .map_pass_err(scope)?; let end_offset = offset + mem::size_of::() as u64; - if end_offset > indirect_buffer.size { + if end_offset > buffer.size { return Err(ComputePassErrorInner::IndirectBufferOverrun { - offset, + offset: *offset, end_offset, - buffer_size: indirect_buffer.size, + buffer_size: buffer.size, }) .map_pass_err(scope); } - let buf_raw = indirect_buffer + let buf_raw = buffer .raw .get(&snatch_guard) .ok_or(ComputePassErrorInner::InvalidIndirectBuffer(buffer_id)) @@ -744,9 +710,9 @@ impl Global { let stride = 3 * 4; // 3 integers, x/y/z group size buffer_memory_init_actions.extend( - indirect_buffer.initialization_status.read().create_action( - indirect_buffer, - offset..(offset + stride), + buffer.initialization_status.read().create_action( + buffer, + *offset..(*offset + stride), MemoryInitKind::NeedsInitializedMemory, ), ); @@ -756,15 +722,15 @@ impl Global { raw, &mut intermediate_trackers, &*bind_group_guard, - Some(indirect_buffer.as_info().tracker_index()), + Some(buffer.as_info().tracker_index()), &snatch_guard, ) .map_pass_err(scope)?; unsafe { - raw.dispatch_indirect(buf_raw, offset); + raw.dispatch_indirect(buf_raw, *offset); } } - ComputeCommand::PushDebugGroup { color: _, len } => { + ArcComputeCommand::PushDebugGroup { color: _, len } => { state.debug_scope_depth += 1; if !discard_hal_labels { let label = @@ -776,7 +742,7 @@ impl Global { } string_offset += len; } - ComputeCommand::PopDebugGroup => { + ArcComputeCommand::PopDebugGroup => { let scope = PassErrorScope::PopDebugGroup; if state.debug_scope_depth == 0 { @@ -790,7 +756,7 @@ impl Global { } } } - ComputeCommand::InsertDebugMarker { color: _, len } => { + ArcComputeCommand::InsertDebugMarker { color: _, len } => { if !discard_hal_labels { let label = str::from_utf8(&base.string_data[string_offset..string_offset + len]) @@ -799,49 +765,43 @@ impl Global { } string_offset += len; } - ComputeCommand::WriteTimestamp { - query_set_id, + ArcComputeCommand::WriteTimestamp { + query_set, query_index, } => { + let query_set_id = query_set.as_info().id(); let scope = PassErrorScope::WriteTimestamp; device .require_features(wgt::Features::TIMESTAMP_QUERY_INSIDE_PASSES) .map_pass_err(scope)?; - let query_set: &resource::QuerySet = tracker - .query_sets - .add_single(&*query_set_guard, query_set_id) - .ok_or(ComputePassErrorInner::InvalidQuerySet(query_set_id)) - .map_pass_err(scope)?; + let query_set = tracker.query_sets.insert_single(query_set.clone()); query_set - .validate_and_write_timestamp(raw, query_set_id, query_index, None) + .validate_and_write_timestamp(raw, query_set_id, *query_index, None) .map_pass_err(scope)?; } - ComputeCommand::BeginPipelineStatisticsQuery { - query_set_id, + ArcComputeCommand::BeginPipelineStatisticsQuery { + query_set, query_index, } => { + let query_set_id = query_set.as_info().id(); let scope = PassErrorScope::BeginPipelineStatisticsQuery; - let query_set: &resource::QuerySet = tracker - .query_sets - .add_single(&*query_set_guard, query_set_id) - .ok_or(ComputePassErrorInner::InvalidQuerySet(query_set_id)) - .map_pass_err(scope)?; + let query_set = tracker.query_sets.insert_single(query_set.clone()); query_set .validate_and_begin_pipeline_statistics_query( raw, query_set_id, - query_index, + *query_index, None, &mut active_query, ) .map_pass_err(scope)?; } - ComputeCommand::EndPipelineStatisticsQuery => { + ArcComputeCommand::EndPipelineStatisticsQuery => { let scope = PassErrorScope::EndPipelineStatisticsQuery; end_pipeline_statistics_query(raw, &*query_set_guard, &mut active_query) @@ -885,33 +845,24 @@ impl Global { } } -pub mod compute_ffi { +pub mod compute_commands { use super::{ComputeCommand, ComputePass}; - use crate::{id, RawString}; - use std::{convert::TryInto, ffi, slice}; + use crate::id; + use std::convert::TryInto; use wgt::{BufferAddress, DynamicOffset}; - /// # Safety - /// - /// This function is unsafe as there is no guarantee that the given pointer is - /// valid for `offset_length` elements. - #[no_mangle] - pub unsafe extern "C" fn wgpu_compute_pass_set_bind_group( + pub fn wgpu_compute_pass_set_bind_group( pass: &mut ComputePass, index: u32, bind_group_id: id::BindGroupId, - offsets: *const DynamicOffset, - offset_length: usize, + offsets: &[DynamicOffset], ) { - let redundant = unsafe { - pass.current_bind_groups.set_and_check_redundant( - bind_group_id, - index, - &mut pass.base.dynamic_offsets, - offsets, - offset_length, - ) - }; + let redundant = pass.current_bind_groups.set_and_check_redundant( + bind_group_id, + index, + &mut pass.base.dynamic_offsets, + offsets, + ); if redundant { return; @@ -919,13 +870,12 @@ pub mod compute_ffi { pass.base.commands.push(ComputeCommand::SetBindGroup { index, - num_dynamic_offsets: offset_length, + num_dynamic_offsets: offsets.len(), bind_group_id, }); } - #[no_mangle] - pub extern "C" fn wgpu_compute_pass_set_pipeline( + pub fn wgpu_compute_pass_set_pipeline( pass: &mut ComputePass, pipeline_id: id::ComputePipelineId, ) { @@ -938,47 +888,34 @@ pub mod compute_ffi { .push(ComputeCommand::SetPipeline(pipeline_id)); } - /// # Safety - /// - /// This function is unsafe as there is no guarantee that the given pointer is - /// valid for `size_bytes` bytes. - #[no_mangle] - pub unsafe extern "C" fn wgpu_compute_pass_set_push_constant( - pass: &mut ComputePass, - offset: u32, - size_bytes: u32, - data: *const u8, - ) { + pub fn wgpu_compute_pass_set_push_constant(pass: &mut ComputePass, offset: u32, data: &[u8]) { assert_eq!( offset & (wgt::PUSH_CONSTANT_ALIGNMENT - 1), 0, "Push constant offset must be aligned to 4 bytes." ); assert_eq!( - size_bytes & (wgt::PUSH_CONSTANT_ALIGNMENT - 1), + data.len() as u32 & (wgt::PUSH_CONSTANT_ALIGNMENT - 1), 0, "Push constant size must be aligned to 4 bytes." ); - let data_slice = unsafe { slice::from_raw_parts(data, size_bytes as usize) }; let value_offset = pass.base.push_constant_data.len().try_into().expect( "Ran out of push constant space. Don't set 4gb of push constants per ComputePass.", ); pass.base.push_constant_data.extend( - data_slice - .chunks_exact(wgt::PUSH_CONSTANT_ALIGNMENT as usize) + data.chunks_exact(wgt::PUSH_CONSTANT_ALIGNMENT as usize) .map(|arr| u32::from_ne_bytes([arr[0], arr[1], arr[2], arr[3]])), ); pass.base.commands.push(ComputeCommand::SetPushConstant { offset, - size_bytes, + size_bytes: data.len() as u32, values_offset: value_offset, }); } - #[no_mangle] - pub extern "C" fn wgpu_compute_pass_dispatch_workgroups( + pub fn wgpu_compute_pass_dispatch_workgroups( pass: &mut ComputePass, groups_x: u32, groups_y: u32, @@ -989,8 +926,7 @@ pub mod compute_ffi { .push(ComputeCommand::Dispatch([groups_x, groups_y, groups_z])); } - #[no_mangle] - pub extern "C" fn wgpu_compute_pass_dispatch_workgroups_indirect( + pub fn wgpu_compute_pass_dispatch_workgroups_indirect( pass: &mut ComputePass, buffer_id: id::BufferId, offset: BufferAddress, @@ -1000,17 +936,8 @@ pub mod compute_ffi { .push(ComputeCommand::DispatchIndirect { buffer_id, offset }); } - /// # Safety - /// - /// This function is unsafe as there is no guarantee that the given `label` - /// is a valid null-terminated string. - #[no_mangle] - pub unsafe extern "C" fn wgpu_compute_pass_push_debug_group( - pass: &mut ComputePass, - label: RawString, - color: u32, - ) { - let bytes = unsafe { ffi::CStr::from_ptr(label) }.to_bytes(); + pub fn wgpu_compute_pass_push_debug_group(pass: &mut ComputePass, label: &str, color: u32) { + let bytes = label.as_bytes(); pass.base.string_data.extend_from_slice(bytes); pass.base.commands.push(ComputeCommand::PushDebugGroup { @@ -1019,22 +946,12 @@ pub mod compute_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_compute_pass_pop_debug_group(pass: &mut ComputePass) { + pub fn wgpu_compute_pass_pop_debug_group(pass: &mut ComputePass) { pass.base.commands.push(ComputeCommand::PopDebugGroup); } - /// # Safety - /// - /// This function is unsafe as there is no guarantee that the given `label` - /// is a valid null-terminated string. - #[no_mangle] - pub unsafe extern "C" fn wgpu_compute_pass_insert_debug_marker( - pass: &mut ComputePass, - label: RawString, - color: u32, - ) { - let bytes = unsafe { ffi::CStr::from_ptr(label) }.to_bytes(); + pub fn wgpu_compute_pass_insert_debug_marker(pass: &mut ComputePass, label: &str, color: u32) { + let bytes = label.as_bytes(); pass.base.string_data.extend_from_slice(bytes); pass.base.commands.push(ComputeCommand::InsertDebugMarker { @@ -1043,8 +960,7 @@ pub mod compute_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_compute_pass_write_timestamp( + pub fn wgpu_compute_pass_write_timestamp( pass: &mut ComputePass, query_set_id: id::QuerySetId, query_index: u32, @@ -1055,8 +971,7 @@ pub mod compute_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_compute_pass_begin_pipeline_statistics_query( + pub fn wgpu_compute_pass_begin_pipeline_statistics_query( pass: &mut ComputePass, query_set_id: id::QuerySetId, query_index: u32, @@ -1069,8 +984,7 @@ pub mod compute_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_compute_pass_end_pipeline_statistics_query(pass: &mut ComputePass) { + pub fn wgpu_compute_pass_end_pipeline_statistics_query(pass: &mut ComputePass) { pass.base .commands .push(ComputeCommand::EndPipelineStatisticsQuery); diff --git a/third_party/rust/wgpu-core/src/command/compute_command.rs b/third_party/rust/wgpu-core/src/command/compute_command.rs new file mode 100644 index 000000000000..49fdbbec24d8 --- /dev/null +++ b/third_party/rust/wgpu-core/src/command/compute_command.rs @@ -0,0 +1,322 @@ +use std::sync::Arc; + +use crate::{ + binding_model::BindGroup, + hal_api::HalApi, + id, + pipeline::ComputePipeline, + resource::{Buffer, QuerySet}, +}; + +use super::{ComputePassError, ComputePassErrorInner, PassErrorScope}; + +#[derive(Clone, Copy, Debug)] +#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] +pub enum ComputeCommand { + SetBindGroup { + index: u32, + num_dynamic_offsets: usize, + bind_group_id: id::BindGroupId, + }, + + SetPipeline(id::ComputePipelineId), + + /// Set a range of push constants to values stored in `push_constant_data`. + SetPushConstant { + /// The byte offset within the push constant storage to write to. This + /// must be a multiple of four. + offset: u32, + + /// The number of bytes to write. This must be a multiple of four. + size_bytes: u32, + + /// Index in `push_constant_data` of the start of the data + /// to be written. + /// + /// Note: this is not a byte offset like `offset`. Rather, it is the + /// index of the first `u32` element in `push_constant_data` to read. + values_offset: u32, + }, + + Dispatch([u32; 3]), + + DispatchIndirect { + buffer_id: id::BufferId, + offset: wgt::BufferAddress, + }, + + PushDebugGroup { + color: u32, + len: usize, + }, + + PopDebugGroup, + + InsertDebugMarker { + color: u32, + len: usize, + }, + + WriteTimestamp { + query_set_id: id::QuerySetId, + query_index: u32, + }, + + BeginPipelineStatisticsQuery { + query_set_id: id::QuerySetId, + query_index: u32, + }, + + EndPipelineStatisticsQuery, +} + +impl ComputeCommand { + /// Resolves all ids in a list of commands into the corresponding resource Arc. + /// + // TODO: Once resolving is done on-the-fly during recording, this function should be only needed with the replay feature: + // #[cfg(feature = "replay")] + pub fn resolve_compute_command_ids( + hub: &crate::hub::Hub, + commands: &[ComputeCommand], + ) -> Result>, ComputePassError> { + let buffers_guard = hub.buffers.read(); + let bind_group_guard = hub.bind_groups.read(); + let query_set_guard = hub.query_sets.read(); + let pipelines_guard = hub.compute_pipelines.read(); + + let resolved_commands: Vec> = commands + .iter() + .map(|c| -> Result, ComputePassError> { + Ok(match *c { + ComputeCommand::SetBindGroup { + index, + num_dynamic_offsets, + bind_group_id, + } => ArcComputeCommand::SetBindGroup { + index, + num_dynamic_offsets, + bind_group: bind_group_guard.get_owned(bind_group_id).map_err(|_| { + ComputePassError { + scope: PassErrorScope::SetBindGroup(bind_group_id), + inner: ComputePassErrorInner::InvalidBindGroup(index), + } + })?, + }, + + ComputeCommand::SetPipeline(pipeline_id) => ArcComputeCommand::SetPipeline( + pipelines_guard + .get_owned(pipeline_id) + .map_err(|_| ComputePassError { + scope: PassErrorScope::SetPipelineCompute(pipeline_id), + inner: ComputePassErrorInner::InvalidPipeline(pipeline_id), + })?, + ), + + ComputeCommand::SetPushConstant { + offset, + size_bytes, + values_offset, + } => ArcComputeCommand::SetPushConstant { + offset, + size_bytes, + values_offset, + }, + + ComputeCommand::Dispatch(dim) => ArcComputeCommand::Dispatch(dim), + + ComputeCommand::DispatchIndirect { buffer_id, offset } => { + ArcComputeCommand::DispatchIndirect { + buffer: buffers_guard.get_owned(buffer_id).map_err(|_| { + ComputePassError { + scope: PassErrorScope::Dispatch { + indirect: true, + pipeline: None, // TODO: not used right now, but once we do the resolve during recording we can use this again. + }, + inner: ComputePassErrorInner::InvalidBuffer(buffer_id), + } + })?, + offset, + } + } + + ComputeCommand::PushDebugGroup { color, len } => { + ArcComputeCommand::PushDebugGroup { color, len } + } + + ComputeCommand::PopDebugGroup => ArcComputeCommand::PopDebugGroup, + + ComputeCommand::InsertDebugMarker { color, len } => { + ArcComputeCommand::InsertDebugMarker { color, len } + } + + ComputeCommand::WriteTimestamp { + query_set_id, + query_index, + } => ArcComputeCommand::WriteTimestamp { + query_set: query_set_guard.get_owned(query_set_id).map_err(|_| { + ComputePassError { + scope: PassErrorScope::WriteTimestamp, + inner: ComputePassErrorInner::InvalidQuerySet(query_set_id), + } + })?, + query_index, + }, + + ComputeCommand::BeginPipelineStatisticsQuery { + query_set_id, + query_index, + } => ArcComputeCommand::BeginPipelineStatisticsQuery { + query_set: query_set_guard.get_owned(query_set_id).map_err(|_| { + ComputePassError { + scope: PassErrorScope::BeginPipelineStatisticsQuery, + inner: ComputePassErrorInner::InvalidQuerySet(query_set_id), + } + })?, + query_index, + }, + + ComputeCommand::EndPipelineStatisticsQuery => { + ArcComputeCommand::EndPipelineStatisticsQuery + } + }) + }) + .collect::, ComputePassError>>()?; + Ok(resolved_commands) + } +} + +/// Equivalent to `ComputeCommand` but the Ids resolved into resource Arcs. +#[derive(Clone, Debug)] +pub enum ArcComputeCommand { + SetBindGroup { + index: u32, + num_dynamic_offsets: usize, + bind_group: Arc>, + }, + + SetPipeline(Arc>), + + /// Set a range of push constants to values stored in `push_constant_data`. + SetPushConstant { + /// The byte offset within the push constant storage to write to. This + /// must be a multiple of four. + offset: u32, + + /// The number of bytes to write. This must be a multiple of four. + size_bytes: u32, + + /// Index in `push_constant_data` of the start of the data + /// to be written. + /// + /// Note: this is not a byte offset like `offset`. Rather, it is the + /// index of the first `u32` element in `push_constant_data` to read. + values_offset: u32, + }, + + Dispatch([u32; 3]), + + DispatchIndirect { + buffer: Arc>, + offset: wgt::BufferAddress, + }, + + PushDebugGroup { + color: u32, + len: usize, + }, + + PopDebugGroup, + + InsertDebugMarker { + color: u32, + len: usize, + }, + + WriteTimestamp { + query_set: Arc>, + query_index: u32, + }, + + BeginPipelineStatisticsQuery { + query_set: Arc>, + query_index: u32, + }, + + EndPipelineStatisticsQuery, +} + +#[cfg(feature = "trace")] +impl From<&ArcComputeCommand> for ComputeCommand { + fn from(value: &ArcComputeCommand) -> Self { + use crate::resource::Resource as _; + + match value { + ArcComputeCommand::SetBindGroup { + index, + num_dynamic_offsets, + bind_group, + } => ComputeCommand::SetBindGroup { + index: *index, + num_dynamic_offsets: *num_dynamic_offsets, + bind_group_id: bind_group.as_info().id(), + }, + + ArcComputeCommand::SetPipeline(pipeline) => { + ComputeCommand::SetPipeline(pipeline.as_info().id()) + } + + ArcComputeCommand::SetPushConstant { + offset, + size_bytes, + values_offset, + } => ComputeCommand::SetPushConstant { + offset: *offset, + size_bytes: *size_bytes, + values_offset: *values_offset, + }, + + ArcComputeCommand::Dispatch(dim) => ComputeCommand::Dispatch(*dim), + + ArcComputeCommand::DispatchIndirect { buffer, offset } => { + ComputeCommand::DispatchIndirect { + buffer_id: buffer.as_info().id(), + offset: *offset, + } + } + + ArcComputeCommand::PushDebugGroup { color, len } => ComputeCommand::PushDebugGroup { + color: *color, + len: *len, + }, + + ArcComputeCommand::PopDebugGroup => ComputeCommand::PopDebugGroup, + + ArcComputeCommand::InsertDebugMarker { color, len } => { + ComputeCommand::InsertDebugMarker { + color: *color, + len: *len, + } + } + + ArcComputeCommand::WriteTimestamp { + query_set, + query_index, + } => ComputeCommand::WriteTimestamp { + query_set_id: query_set.as_info().id(), + query_index: *query_index, + }, + + ArcComputeCommand::BeginPipelineStatisticsQuery { + query_set, + query_index, + } => ComputeCommand::BeginPipelineStatisticsQuery { + query_set_id: query_set.as_info().id(), + query_index: *query_index, + }, + + ArcComputeCommand::EndPipelineStatisticsQuery => { + ComputeCommand::EndPipelineStatisticsQuery + } + } + } +} diff --git a/third_party/rust/wgpu-core/src/command/mod.rs b/third_party/rust/wgpu-core/src/command/mod.rs index 17ddef697c1c..d53f47bf4255 100644 --- a/third_party/rust/wgpu-core/src/command/mod.rs +++ b/third_party/rust/wgpu-core/src/command/mod.rs @@ -3,18 +3,19 @@ mod bind; mod bundle; mod clear; mod compute; +mod compute_command; mod draw; mod memory_init; mod query; mod render; mod transfer; -use std::slice; use std::sync::Arc; pub(crate) use self::clear::clear_texture; pub use self::{ - bundle::*, clear::ClearError, compute::*, draw::*, query::*, render::*, transfer::*, + bundle::*, clear::ClearError, compute::*, compute_command::ComputeCommand, draw::*, query::*, + render::*, transfer::*, }; pub(crate) use allocator::CommandAllocator; @@ -24,6 +25,7 @@ use crate::device::{Device, DeviceError}; use crate::error::{ErrorFormatter, PrettyError}; use crate::hub::Hub; use crate::id::CommandBufferId; +use crate::lock::{rank, Mutex}; use crate::snatch::SnatchGuard; use crate::init_tracker::BufferInitTrackerAction; @@ -32,7 +34,6 @@ use crate::track::{Tracker, UsageScope}; use crate::{api_log, global::Global, hal_api::HalApi, id, resource_log, Label}; use hal::CommandEncoder as _; -use parking_lot::Mutex; use thiserror::Error; #[cfg(feature = "trace")] @@ -92,15 +93,17 @@ pub(crate) enum CommandEncoderStatus { /// Methods that take a command encoder id actually look up the command buffer, /// and then use its encoder. /// -/// [rce]: wgpu_hal::Api::CommandEncoder -/// [rcb]: wgpu_hal::Api::CommandBuffer +/// [rce]: hal::Api::CommandEncoder +/// [rcb]: hal::Api::CommandBuffer +/// [`CommandEncoderId`]: crate::id::CommandEncoderId pub(crate) struct CommandEncoder { /// The underlying `wgpu_hal` [`CommandEncoder`]. /// /// Successfully executed command buffers' encoders are saved in a - /// [`wgpu_hal::device::CommandAllocator`] for recycling. + /// [`CommandAllocator`] for recycling. /// - /// [`CommandEncoder`]: wgpu_hal::Api::CommandEncoder + /// [`CommandEncoder`]: hal::Api::CommandEncoder + /// [`CommandAllocator`]: crate::command::CommandAllocator raw: A::CommandEncoder, /// All the raw command buffers for our owning [`CommandBuffer`], in @@ -112,13 +115,16 @@ pub(crate) struct CommandEncoder { /// [`raw.reset_all()`][CE::ra], so the encoder and its buffers travel /// together. /// - /// [CE::ra]: wgpu_hal::CommandEncoder::reset_all + /// [CE::ra]: hal::CommandEncoder::reset_all + /// [`wgpu_hal::CommandEncoder`]: hal::CommandEncoder list: Vec, /// True if `raw` is in the "recording" state. /// /// See the documentation for [`wgpu_hal::CommandEncoder`] for /// details on the states `raw` can be in. + /// + /// [`wgpu_hal::CommandEncoder`]: hal::CommandEncoder is_open: bool, label: Option, @@ -149,6 +155,8 @@ impl CommandEncoder { /// transitions' command buffer. /// /// [l]: CommandEncoder::list + /// [`transition_buffers`]: hal::CommandEncoder::transition_buffers + /// [`transition_textures`]: hal::CommandEncoder::transition_textures fn close_and_swap(&mut self) -> Result<(), DeviceError> { if self.is_open { self.is_open = false; @@ -229,6 +237,8 @@ pub(crate) struct DestroyedTextureError(pub id::TextureId); pub struct CommandBufferMutable { /// The [`wgpu_hal::Api::CommandBuffer`]s we've built so far, and the encoder /// they belong to. + /// + /// [`wgpu_hal::Api::CommandBuffer`]: hal::Api::CommandBuffer pub(crate) encoder: CommandEncoder, /// The current state of this command buffer's encoder. @@ -330,25 +340,28 @@ impl CommandBuffer { .as_str(), None, ), - data: Mutex::new(Some(CommandBufferMutable { - encoder: CommandEncoder { - raw: encoder, - is_open: false, - list: Vec::new(), - label, - }, - status: CommandEncoderStatus::Recording, - trackers: Tracker::new(), - buffer_memory_init_actions: Default::default(), - texture_memory_actions: Default::default(), - pending_query_resets: QueryResetMap::new(), - #[cfg(feature = "trace")] - commands: if enable_tracing { - Some(Vec::new()) - } else { - None - }, - })), + data: Mutex::new( + rank::COMMAND_BUFFER_DATA, + Some(CommandBufferMutable { + encoder: CommandEncoder { + raw: encoder, + is_open: false, + list: Vec::new(), + label, + }, + status: CommandEncoderStatus::Recording, + trackers: Tracker::new(), + buffer_memory_init_actions: Default::default(), + texture_memory_actions: Default::default(), + pending_query_resets: QueryResetMap::new(), + #[cfg(feature = "trace")] + commands: if enable_tracing { + Some(Vec::new()) + } else { + None + }, + }), + ), } } @@ -757,16 +770,15 @@ impl BindGroupStateChange { } } - unsafe fn set_and_check_redundant( + fn set_and_check_redundant( &mut self, bind_group_id: id::BindGroupId, index: u32, dynamic_offsets: &mut Vec, - offsets: *const wgt::DynamicOffset, - offset_length: usize, + offsets: &[wgt::DynamicOffset], ) -> bool { // For now never deduplicate bind groups with dynamic offsets. - if offset_length == 0 { + if offsets.is_empty() { // If this get returns None, that means we're well over the limit, // so let the call through to get a proper error if let Some(current_bind_group) = self.last_states.get_mut(index as usize) { @@ -782,8 +794,7 @@ impl BindGroupStateChange { if let Some(current_bind_group) = self.last_states.get_mut(index as usize) { current_bind_group.reset(); } - dynamic_offsets - .extend_from_slice(unsafe { slice::from_raw_parts(offsets, offset_length) }); + dynamic_offsets.extend_from_slice(offsets); } false } diff --git a/third_party/rust/wgpu-core/src/command/render.rs b/third_party/rust/wgpu-core/src/command/render.rs index f4db9aaf34d9..60e915e621bb 100644 --- a/third_party/rust/wgpu-core/src/command/render.rs +++ b/third_party/rust/wgpu-core/src/command/render.rs @@ -2459,36 +2459,31 @@ impl Global { } } -pub mod render_ffi { +pub mod render_commands { use super::{ super::{Rect, RenderCommand}, RenderPass, }; - use crate::{id, RawString}; - use std::{convert::TryInto, ffi, num::NonZeroU32, slice}; + use crate::id; + use std::{convert::TryInto, num::NonZeroU32}; use wgt::{BufferAddress, BufferSize, Color, DynamicOffset, IndexFormat}; /// # Safety /// /// This function is unsafe as there is no guarantee that the given pointer is /// valid for `offset_length` elements. - #[no_mangle] - pub unsafe extern "C" fn wgpu_render_pass_set_bind_group( + pub fn wgpu_render_pass_set_bind_group( pass: &mut RenderPass, index: u32, bind_group_id: id::BindGroupId, - offsets: *const DynamicOffset, - offset_length: usize, + offsets: &[DynamicOffset], ) { - let redundant = unsafe { - pass.current_bind_groups.set_and_check_redundant( - bind_group_id, - index, - &mut pass.base.dynamic_offsets, - offsets, - offset_length, - ) - }; + let redundant = pass.current_bind_groups.set_and_check_redundant( + bind_group_id, + index, + &mut pass.base.dynamic_offsets, + offsets, + ); if redundant { return; @@ -2496,16 +2491,12 @@ pub mod render_ffi { pass.base.commands.push(RenderCommand::SetBindGroup { index, - num_dynamic_offsets: offset_length, + num_dynamic_offsets: offsets.len(), bind_group_id, }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_set_pipeline( - pass: &mut RenderPass, - pipeline_id: id::RenderPipelineId, - ) { + pub fn wgpu_render_pass_set_pipeline(pass: &mut RenderPass, pipeline_id: id::RenderPipelineId) { if pass.current_pipeline.set_and_check_redundant(pipeline_id) { return; } @@ -2515,8 +2506,7 @@ pub mod render_ffi { .push(RenderCommand::SetPipeline(pipeline_id)); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_set_vertex_buffer( + pub fn wgpu_render_pass_set_vertex_buffer( pass: &mut RenderPass, slot: u32, buffer_id: id::BufferId, @@ -2531,8 +2521,7 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_set_index_buffer( + pub fn wgpu_render_pass_set_index_buffer( pass: &mut RenderPass, buffer: id::BufferId, index_format: IndexFormat, @@ -2542,22 +2531,19 @@ pub mod render_ffi { pass.set_index_buffer(buffer, index_format, offset, size); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_set_blend_constant(pass: &mut RenderPass, color: &Color) { + pub fn wgpu_render_pass_set_blend_constant(pass: &mut RenderPass, color: &Color) { pass.base .commands .push(RenderCommand::SetBlendConstant(*color)); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_set_stencil_reference(pass: &mut RenderPass, value: u32) { + pub fn wgpu_render_pass_set_stencil_reference(pass: &mut RenderPass, value: u32) { pass.base .commands .push(RenderCommand::SetStencilReference(value)); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_set_viewport( + pub fn wgpu_render_pass_set_viewport( pass: &mut RenderPass, x: f32, y: f32, @@ -2573,8 +2559,7 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_set_scissor_rect( + pub fn wgpu_render_pass_set_scissor_rect( pass: &mut RenderPass, x: u32, y: u32, @@ -2590,13 +2575,11 @@ pub mod render_ffi { /// /// This function is unsafe as there is no guarantee that the given pointer is /// valid for `size_bytes` bytes. - #[no_mangle] - pub unsafe extern "C" fn wgpu_render_pass_set_push_constants( + pub fn wgpu_render_pass_set_push_constants( pass: &mut RenderPass, stages: wgt::ShaderStages, offset: u32, - size_bytes: u32, - data: *const u8, + data: &[u8], ) { assert_eq!( offset & (wgt::PUSH_CONSTANT_ALIGNMENT - 1), @@ -2604,31 +2587,28 @@ pub mod render_ffi { "Push constant offset must be aligned to 4 bytes." ); assert_eq!( - size_bytes & (wgt::PUSH_CONSTANT_ALIGNMENT - 1), + data.len() as u32 & (wgt::PUSH_CONSTANT_ALIGNMENT - 1), 0, "Push constant size must be aligned to 4 bytes." ); - let data_slice = unsafe { slice::from_raw_parts(data, size_bytes as usize) }; let value_offset = pass.base.push_constant_data.len().try_into().expect( "Ran out of push constant space. Don't set 4gb of push constants per RenderPass.", ); pass.base.push_constant_data.extend( - data_slice - .chunks_exact(wgt::PUSH_CONSTANT_ALIGNMENT as usize) + data.chunks_exact(wgt::PUSH_CONSTANT_ALIGNMENT as usize) .map(|arr| u32::from_ne_bytes([arr[0], arr[1], arr[2], arr[3]])), ); pass.base.commands.push(RenderCommand::SetPushConstant { stages, offset, - size_bytes, + size_bytes: data.len() as u32, values_offset: Some(value_offset), }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_draw( + pub fn wgpu_render_pass_draw( pass: &mut RenderPass, vertex_count: u32, instance_count: u32, @@ -2643,8 +2623,7 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_draw_indexed( + pub fn wgpu_render_pass_draw_indexed( pass: &mut RenderPass, index_count: u32, instance_count: u32, @@ -2661,8 +2640,7 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_draw_indirect( + pub fn wgpu_render_pass_draw_indirect( pass: &mut RenderPass, buffer_id: id::BufferId, offset: BufferAddress, @@ -2675,8 +2653,7 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_draw_indexed_indirect( + pub fn wgpu_render_pass_draw_indexed_indirect( pass: &mut RenderPass, buffer_id: id::BufferId, offset: BufferAddress, @@ -2689,8 +2666,7 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_multi_draw_indirect( + pub fn wgpu_render_pass_multi_draw_indirect( pass: &mut RenderPass, buffer_id: id::BufferId, offset: BufferAddress, @@ -2704,8 +2680,7 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_multi_draw_indexed_indirect( + pub fn wgpu_render_pass_multi_draw_indexed_indirect( pass: &mut RenderPass, buffer_id: id::BufferId, offset: BufferAddress, @@ -2719,8 +2694,7 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_multi_draw_indirect_count( + pub fn wgpu_render_pass_multi_draw_indirect_count( pass: &mut RenderPass, buffer_id: id::BufferId, offset: BufferAddress, @@ -2740,8 +2714,7 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_multi_draw_indexed_indirect_count( + pub fn wgpu_render_pass_multi_draw_indexed_indirect_count( pass: &mut RenderPass, buffer_id: id::BufferId, offset: BufferAddress, @@ -2761,17 +2734,8 @@ pub mod render_ffi { }); } - /// # Safety - /// - /// This function is unsafe as there is no guarantee that the given `label` - /// is a valid null-terminated string. - #[no_mangle] - pub unsafe extern "C" fn wgpu_render_pass_push_debug_group( - pass: &mut RenderPass, - label: RawString, - color: u32, - ) { - let bytes = unsafe { ffi::CStr::from_ptr(label) }.to_bytes(); + pub fn wgpu_render_pass_push_debug_group(pass: &mut RenderPass, label: &str, color: u32) { + let bytes = label.as_bytes(); pass.base.string_data.extend_from_slice(bytes); pass.base.commands.push(RenderCommand::PushDebugGroup { @@ -2780,22 +2744,12 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_pop_debug_group(pass: &mut RenderPass) { + pub fn wgpu_render_pass_pop_debug_group(pass: &mut RenderPass) { pass.base.commands.push(RenderCommand::PopDebugGroup); } - /// # Safety - /// - /// This function is unsafe as there is no guarantee that the given `label` - /// is a valid null-terminated string. - #[no_mangle] - pub unsafe extern "C" fn wgpu_render_pass_insert_debug_marker( - pass: &mut RenderPass, - label: RawString, - color: u32, - ) { - let bytes = unsafe { ffi::CStr::from_ptr(label) }.to_bytes(); + pub fn wgpu_render_pass_insert_debug_marker(pass: &mut RenderPass, label: &str, color: u32) { + let bytes = label.as_bytes(); pass.base.string_data.extend_from_slice(bytes); pass.base.commands.push(RenderCommand::InsertDebugMarker { @@ -2804,8 +2758,7 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_write_timestamp( + pub fn wgpu_render_pass_write_timestamp( pass: &mut RenderPass, query_set_id: id::QuerySetId, query_index: u32, @@ -2816,23 +2769,17 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_begin_occlusion_query( - pass: &mut RenderPass, - query_index: u32, - ) { + pub fn wgpu_render_pass_begin_occlusion_query(pass: &mut RenderPass, query_index: u32) { pass.base .commands .push(RenderCommand::BeginOcclusionQuery { query_index }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_end_occlusion_query(pass: &mut RenderPass) { + pub fn wgpu_render_pass_end_occlusion_query(pass: &mut RenderPass) { pass.base.commands.push(RenderCommand::EndOcclusionQuery); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_begin_pipeline_statistics_query( + pub fn wgpu_render_pass_begin_pipeline_statistics_query( pass: &mut RenderPass, query_set_id: id::QuerySetId, query_index: u32, @@ -2845,26 +2792,17 @@ pub mod render_ffi { }); } - #[no_mangle] - pub extern "C" fn wgpu_render_pass_end_pipeline_statistics_query(pass: &mut RenderPass) { + pub fn wgpu_render_pass_end_pipeline_statistics_query(pass: &mut RenderPass) { pass.base .commands .push(RenderCommand::EndPipelineStatisticsQuery); } - /// # Safety - /// - /// This function is unsafe as there is no guarantee that the given pointer is - /// valid for `render_bundle_ids_length` elements. - #[no_mangle] - pub unsafe extern "C" fn wgpu_render_pass_execute_bundles( + pub fn wgpu_render_pass_execute_bundles( pass: &mut RenderPass, - render_bundle_ids: *const id::RenderBundleId, - render_bundle_ids_length: usize, + render_bundle_ids: &[id::RenderBundleId], ) { - for &bundle_id in - unsafe { slice::from_raw_parts(render_bundle_ids, render_bundle_ids_length) } - { + for &bundle_id in render_bundle_ids { pass.base .commands .push(RenderCommand::ExecuteBundle(bundle_id)); diff --git a/third_party/rust/wgpu-core/src/device/bgl.rs b/third_party/rust/wgpu-core/src/device/bgl.rs index d606f049a3a2..911ac8a43544 100644 --- a/third_party/rust/wgpu-core/src/device/bgl.rs +++ b/third_party/rust/wgpu-core/src/device/bgl.rs @@ -58,7 +58,7 @@ impl EntryMap { assert!(self.sorted); } - /// Create a new [`BindGroupLayoutEntryMap`] from a slice of [`wgt::BindGroupLayoutEntry`]s. + /// Create a new [`EntryMap`] from a slice of [`wgt::BindGroupLayoutEntry`]s. /// /// Errors if there are duplicate bindings or if any binding index is greater than /// the device's limits. diff --git a/third_party/rust/wgpu-core/src/device/global.rs b/third_party/rust/wgpu-core/src/device/global.rs index cdf595542600..046cbb29d9fc 100644 --- a/third_party/rust/wgpu-core/src/device/global.rs +++ b/third_party/rust/wgpu-core/src/device/global.rs @@ -1969,7 +1969,7 @@ impl Global { }; let caps = unsafe { - let suf = A::get_surface(surface); + let suf = A::surface_as_hal(surface); let adapter = &device.adapter; match adapter.raw.adapter.surface_capabilities(suf.unwrap()) { Some(caps) => caps, @@ -2055,7 +2055,7 @@ impl Global { // https://github.com/gfx-rs/wgpu/issues/4105 match unsafe { - A::get_surface(surface) + A::surface_as_hal(surface) .unwrap() .configure(device.raw(), &hal_config) } { diff --git a/third_party/rust/wgpu-core/src/device/life.rs b/third_party/rust/wgpu-core/src/device/life.rs index 85bf439f5ef4..23f09682e4c2 100644 --- a/third_party/rust/wgpu-core/src/device/life.rs +++ b/third_party/rust/wgpu-core/src/device/life.rs @@ -7,6 +7,7 @@ use crate::{ }, hal_api::HalApi, id, + lock::Mutex, pipeline::{ComputePipeline, RenderPipeline}, resource::{ self, Buffer, DestroyedBuffer, DestroyedTexture, QuerySet, Resource, Sampler, @@ -18,7 +19,6 @@ use crate::{ }; use smallvec::SmallVec; -use parking_lot::Mutex; use std::sync::Arc; use thiserror::Error; @@ -127,7 +127,37 @@ impl ResourceMaps { } } -/// Resources used by a queue submission, and work to be done once it completes. +/// A command submitted to the GPU for execution. +/// +/// ## Keeping resources alive while the GPU is using them +/// +/// [`wgpu_hal`] requires that, when a command is submitted to a queue, all the +/// resources it uses must remain alive until it has finished executing. +/// +/// The natural way to satisfy this would be for `ActiveSubmission` to hold +/// strong references to all the resources used by its commands. However, that +/// would entail dropping those strong references every time a queue submission +/// finishes, adjusting the reference counts of all the resources it used. This +/// is usually needless work: it's rare for the active submission queue to be +/// the final reference to an object. Usually the user is still holding on to +/// it. +/// +/// To avoid this, an `ActiveSubmission` does not initially hold any strong +/// references to its commands' resources. Instead, each resource tracks the +/// most recent submission index at which it has been used in +/// [`ResourceInfo::submission_index`]. When the user drops a resource, if the +/// submission in which it was last used is still present in the device's queue, +/// we add the resource to [`ActiveSubmission::last_resources`]. Finally, when +/// this `ActiveSubmission` is dequeued and dropped in +/// [`LifetimeTracker::triage_submissions`], we drop `last_resources` along with +/// it. Thus, unless a resource is dropped by the user, it doesn't need to be +/// touched at all when processing completed work. +/// +/// However, it's not clear that this is effective. See [#5560]. +/// +/// [`wgpu_hal`]: hal +/// [`ResourceInfo::submission_index`]: crate::resource::ResourceInfo +/// [#5560]: https://github.com/gfx-rs/wgpu/issues/5560 struct ActiveSubmission { /// The index of the submission we track. /// @@ -159,6 +189,8 @@ struct ActiveSubmission { /// /// Once this submission has completed, the command buffers are reset and /// the command encoder is recycled. + /// + /// [`wgpu_hal::Queue::submit`]: hal::Queue::submit encoders: Vec>, /// List of queue "on_submitted_work_done" closures to be called once this @@ -339,22 +371,19 @@ impl LifetimeTracker { /// /// Assume that all submissions up through `last_done` have completed. /// - /// - Buffers used by those submissions are now ready to map, if - /// requested. Add any buffers in the submission's [`mapped`] list to - /// [`self.ready_to_map`], where [`LifetimeTracker::handle_mapping`] will find - /// them. + /// - Buffers used by those submissions are now ready to map, if requested. + /// Add any buffers in the submission's [`mapped`] list to + /// [`self.ready_to_map`], where [`LifetimeTracker::handle_mapping`] + /// will find them. /// /// - Resources whose final use was in those submissions are now ready to - /// free. Add any resources in the submission's [`last_resources`] table - /// to [`self.free_resources`], where [`LifetimeTracker::cleanup`] will find - /// them. + /// free. Dropping the submission's [`last_resources`] table does so. /// /// Return a list of [`SubmittedWorkDoneClosure`]s to run. /// /// [`mapped`]: ActiveSubmission::mapped /// [`self.ready_to_map`]: LifetimeTracker::ready_to_map /// [`last_resources`]: ActiveSubmission::last_resources - /// [`self.free_resources`]: LifetimeTracker::free_resources /// [`SubmittedWorkDoneClosure`]: crate::device::queue::SubmittedWorkDoneClosure #[must_use] pub fn triage_submissions( @@ -702,13 +731,10 @@ impl LifetimeTracker { /// Identify resources to free, according to `trackers` and `self.suspected_resources`. /// - /// Given `trackers`, the [`Tracker`] belonging to same [`Device`] as - /// `self`, and `hub`, the [`Hub`] to which that `Device` belongs: - /// - /// Remove from `trackers` each resource mentioned in - /// [`self.suspected_resources`]. If `trackers` held the final reference to - /// that resource, add it to the appropriate free list, to be destroyed by - /// the hal: + /// Remove from `trackers`, the [`Tracker`] belonging to same [`Device`] as + /// `self`, each resource mentioned in [`self.suspected_resources`]. If + /// `trackers` held the final reference to that resource, add it to the + /// appropriate free list, to be destroyed by the hal: /// /// - Add resources used by queue submissions still in flight to the /// [`last_resources`] table of the last such submission's entry in @@ -808,29 +834,33 @@ impl LifetimeTracker { *buffer.map_state.lock() = resource::BufferMapState::Idle; log::trace!("Buffer ready to map {tracker_index:?} is not tracked anymore"); } else { - let mapping = match std::mem::replace( + // This _cannot_ be inlined into the match. If it is, the lock will be held + // open through the whole match, resulting in a deadlock when we try to re-lock + // the buffer back to active. + let mapping = std::mem::replace( &mut *buffer.map_state.lock(), resource::BufferMapState::Idle, - ) { + ); + let pending_mapping = match mapping { resource::BufferMapState::Waiting(pending_mapping) => pending_mapping, // Mapping cancelled resource::BufferMapState::Idle => continue, // Mapping queued at least twice by map -> unmap -> map // and was already successfully mapped below - active @ resource::BufferMapState::Active { .. } => { - *buffer.map_state.lock() = active; + resource::BufferMapState::Active { .. } => { + *buffer.map_state.lock() = mapping; continue; } _ => panic!("No pending mapping."), }; - let status = if mapping.range.start != mapping.range.end { + let status = if pending_mapping.range.start != pending_mapping.range.end { log::debug!("Buffer {tracker_index:?} map state -> Active"); - let host = mapping.op.host; - let size = mapping.range.end - mapping.range.start; + let host = pending_mapping.op.host; + let size = pending_mapping.range.end - pending_mapping.range.start; match super::map_buffer( raw, &buffer, - mapping.range.start, + pending_mapping.range.start, size, host, snatch_guard, @@ -838,7 +868,8 @@ impl LifetimeTracker { Ok(ptr) => { *buffer.map_state.lock() = resource::BufferMapState::Active { ptr, - range: mapping.range.start..mapping.range.start + size, + range: pending_mapping.range.start + ..pending_mapping.range.start + size, host, }; Ok(()) @@ -851,12 +882,12 @@ impl LifetimeTracker { } else { *buffer.map_state.lock() = resource::BufferMapState::Active { ptr: std::ptr::NonNull::dangling(), - range: mapping.range, - host: mapping.op.host, + range: pending_mapping.range, + host: pending_mapping.op.host, }; Ok(()) }; - pending_callbacks.push((mapping.op, status)); + pending_callbacks.push((pending_mapping.op, status)); } } pending_callbacks diff --git a/third_party/rust/wgpu-core/src/device/queue.rs b/third_party/rust/wgpu-core/src/device/queue.rs index f524ba56d078..a69eb5c95483 100644 --- a/third_party/rust/wgpu-core/src/device/queue.rs +++ b/third_party/rust/wgpu-core/src/device/queue.rs @@ -14,6 +14,7 @@ use crate::{ hal_label, id::{self, DeviceId, QueueId}, init_tracker::{has_copy_partial_init_tracker_coverage, TextureInitRange}, + lock::{rank, Mutex}, resource::{ Buffer, BufferAccessError, BufferMapState, DestroyedBuffer, DestroyedTexture, Resource, ResourceInfo, ResourceType, StagingBuffer, Texture, TextureInner, @@ -22,7 +23,6 @@ use crate::{ }; use hal::{CommandEncoder as _, Device as _, Queue as _}; -use parking_lot::Mutex; use smallvec::SmallVec; use std::{ @@ -152,8 +152,11 @@ pub enum TempResource { Texture(Arc>), } -/// A series of [`CommandBuffers`] that have been submitted to a +/// A series of raw [`CommandBuffer`]s that have been submitted to a /// queue, and the [`wgpu_hal::CommandEncoder`] that built them. +/// +/// [`CommandBuffer`]: hal::Api::CommandBuffer +/// [`wgpu_hal::CommandEncoder`]: hal::CommandEncoder pub(crate) struct EncoderInFlight { raw: A::CommandEncoder, cmd_buffers: Vec, @@ -197,6 +200,8 @@ pub(crate) struct PendingWrites { /// True if `command_encoder` is in the "recording" state, as /// described in the docs for the [`wgpu_hal::CommandEncoder`] /// trait. + /// + /// [`wgpu_hal::CommandEncoder`]: hal::CommandEncoder pub is_recording: bool, pub temp_resources: Vec>, @@ -312,7 +317,7 @@ fn prepare_staging_buffer( let mapping = unsafe { device.raw().map_buffer(&buffer, 0..size) }?; let staging_buffer = StagingBuffer { - raw: Mutex::new(Some(buffer)), + raw: Mutex::new(rank::STAGING_BUFFER_RAW, Some(buffer)), device: device.clone(), size, info: ResourceInfo::new( diff --git a/third_party/rust/wgpu-core/src/device/resource.rs b/third_party/rust/wgpu-core/src/device/resource.rs index c2a0c0b56ae1..01def56ce77a 100644 --- a/third_party/rust/wgpu-core/src/device/resource.rs +++ b/third_party/rust/wgpu-core/src/device/resource.rs @@ -18,6 +18,7 @@ use crate::{ TextureInitTracker, TextureInitTrackerAction, }, instance::Adapter, + lock::{rank, Mutex, MutexGuard}, pipeline, pool::ResourcePool, registry::Registry, @@ -41,7 +42,7 @@ use crate::{ use arrayvec::ArrayVec; use hal::{CommandEncoder as _, Device as _}; use once_cell::sync::OnceCell; -use parking_lot::{Mutex, MutexGuard, RwLock}; +use parking_lot::RwLock; use smallvec::SmallVec; use thiserror::Error; @@ -274,33 +275,39 @@ impl Device { fence: RwLock::new(Some(fence)), snatchable_lock: unsafe { SnatchLock::new() }, valid: AtomicBool::new(true), - trackers: Mutex::new(Tracker::new()), + trackers: Mutex::new(rank::DEVICE_TRACKERS, Tracker::new()), tracker_indices: TrackerIndexAllocators::new(), - life_tracker: Mutex::new(life::LifetimeTracker::new()), - temp_suspected: Mutex::new(Some(life::ResourceMaps::new())), + life_tracker: Mutex::new(rank::DEVICE_LIFE_TRACKER, life::LifetimeTracker::new()), + temp_suspected: Mutex::new( + rank::DEVICE_TEMP_SUSPECTED, + Some(life::ResourceMaps::new()), + ), bgl_pool: ResourcePool::new(), #[cfg(feature = "trace")] - trace: Mutex::new(trace_path.and_then(|path| match trace::Trace::new(path) { - Ok(mut trace) => { - trace.add(trace::Action::Init { - desc: desc.clone(), - backend: A::VARIANT, - }); - Some(trace) - } - Err(e) => { - log::error!("Unable to start a trace in '{path:?}': {e}"); - None - } - })), + trace: Mutex::new( + rank::DEVICE_TRACE, + trace_path.and_then(|path| match trace::Trace::new(path) { + Ok(mut trace) => { + trace.add(trace::Action::Init { + desc: desc.clone(), + backend: A::VARIANT, + }); + Some(trace) + } + Err(e) => { + log::error!("Unable to start a trace in '{path:?}': {e}"); + None + } + }), + ), alignments, limits: desc.required_limits.clone(), features: desc.required_features, downlevel, instance_flags, - pending_writes: Mutex::new(Some(pending_writes)), - deferred_destroy: Mutex::new(Vec::new()), - usage_scopes: Default::default(), + pending_writes: Mutex::new(rank::DEVICE_PENDING_WRITES, Some(pending_writes)), + deferred_destroy: Mutex::new(rank::DEVICE_DEFERRED_DESTROY, Vec::new()), + usage_scopes: Mutex::new(rank::DEVICE_USAGE_SCOPES, Default::default()), }) } @@ -650,13 +657,13 @@ impl Device { usage: desc.usage, size: desc.size, initialization_status: RwLock::new(BufferInitTracker::new(aligned_size)), - sync_mapped_writes: Mutex::new(None), - map_state: Mutex::new(resource::BufferMapState::Idle), + sync_mapped_writes: Mutex::new(rank::BUFFER_SYNC_MAPPED_WRITES, None), + map_state: Mutex::new(rank::BUFFER_MAP_STATE, resource::BufferMapState::Idle), info: ResourceInfo::new( desc.label.borrow_or_default(), Some(self.tracker_indices.buffers.clone()), ), - bind_groups: Mutex::new(Vec::new()), + bind_groups: Mutex::new(rank::BUFFER_BIND_GROUPS, Vec::new()), }) } @@ -689,8 +696,8 @@ impl Device { Some(self.tracker_indices.textures.clone()), ), clear_mode: RwLock::new(clear_mode), - views: Mutex::new(Vec::new()), - bind_groups: Mutex::new(Vec::new()), + views: Mutex::new(rank::TEXTURE_VIEWS, Vec::new()), + bind_groups: Mutex::new(rank::TEXTURE_BIND_GROUPS, Vec::new()), } } @@ -707,13 +714,13 @@ impl Device { usage: desc.usage, size: desc.size, initialization_status: RwLock::new(BufferInitTracker::new(0)), - sync_mapped_writes: Mutex::new(None), - map_state: Mutex::new(resource::BufferMapState::Idle), + sync_mapped_writes: Mutex::new(rank::BUFFER_SYNC_MAPPED_WRITES, None), + map_state: Mutex::new(rank::BUFFER_MAP_STATE, resource::BufferMapState::Idle), info: ResourceInfo::new( desc.label.borrow_or_default(), Some(self.tracker_indices.buffers.clone()), ), - bind_groups: Mutex::new(Vec::new()), + bind_groups: Mutex::new(rank::BUFFER_BIND_GROUPS, Vec::new()), } } @@ -1537,6 +1544,15 @@ impl Device { .flags .contains(wgt::DownlevelFlags::CUBE_ARRAY_TEXTURES), ); + caps.set( + Caps::SUBGROUP, + self.features + .intersects(wgt::Features::SUBGROUP | wgt::Features::SUBGROUP_VERTEX), + ); + caps.set( + Caps::SUBGROUP_BARRIER, + self.features.intersects(wgt::Features::SUBGROUP_BARRIER), + ); let debug_source = if self.instance_flags.contains(wgt::InstanceFlags::DEBUG) && !source.is_empty() { @@ -1552,7 +1568,26 @@ impl Device { None }; + let mut subgroup_stages = naga::valid::ShaderStages::empty(); + subgroup_stages.set( + naga::valid::ShaderStages::COMPUTE | naga::valid::ShaderStages::FRAGMENT, + self.features.contains(wgt::Features::SUBGROUP), + ); + subgroup_stages.set( + naga::valid::ShaderStages::VERTEX, + self.features.contains(wgt::Features::SUBGROUP_VERTEX), + ); + + let subgroup_operations = if caps.contains(Caps::SUBGROUP) { + use naga::valid::SubgroupOperationSet as S; + S::BASIC | S::VOTE | S::ARITHMETIC | S::BALLOT | S::SHUFFLE | S::SHUFFLE_RELATIVE + } else { + naga::valid::SubgroupOperationSet::empty() + }; + let info = naga::valid::Validator::new(naga::valid::ValidationFlags::all(), caps) + .subgroup_stages(subgroup_stages) + .subgroup_operations(subgroup_operations) .validate(&module) .map_err(|inner| { pipeline::CreateShaderModuleError::Validation(pipeline::ShaderError { @@ -2761,6 +2796,7 @@ impl Device { module: shader_module.raw(), entry_point: final_entry_point_name.as_ref(), constants: desc.stage.constants.as_ref(), + zero_initialize_workgroup_memory: desc.stage.zero_initialize_workgroup_memory, }, }; @@ -3176,6 +3212,7 @@ impl Device { module: vertex_shader_module.raw(), entry_point: &vertex_entry_point_name, constants: stage_desc.constants.as_ref(), + zero_initialize_workgroup_memory: stage_desc.zero_initialize_workgroup_memory, } }; @@ -3236,6 +3273,9 @@ impl Device { module: shader_module.raw(), entry_point: &fragment_entry_point_name, constants: fragment_state.stage.constants.as_ref(), + zero_initialize_workgroup_memory: fragment_state + .stage + .zero_initialize_workgroup_memory, }) } None => None, diff --git a/third_party/rust/wgpu-core/src/hal_api.rs b/third_party/rust/wgpu-core/src/hal_api.rs index 179024baed0f..f1a40b1cffe3 100644 --- a/third_party/rust/wgpu-core/src/hal_api.rs +++ b/third_party/rust/wgpu-core/src/hal_api.rs @@ -11,7 +11,7 @@ pub trait HalApi: hal::Api + 'static + WasmNotSendSync { fn create_instance_from_hal(name: &str, hal_instance: Self::Instance) -> Instance; fn instance_as_hal(instance: &Instance) -> Option<&Self::Instance>; fn hub(global: &Global) -> &Hub; - fn get_surface(surface: &Surface) -> Option<&Self::Surface>; + fn surface_as_hal(surface: &Surface) -> Option<&Self::Surface>; } impl HalApi for hal::api::Empty { @@ -25,7 +25,7 @@ impl HalApi for hal::api::Empty { fn hub(_: &Global) -> &Hub { unimplemented!("called empty api") } - fn get_surface(_: &Surface) -> Option<&Self::Surface> { + fn surface_as_hal(_: &Surface) -> Option<&Self::Surface> { unimplemented!("called empty api") } } @@ -46,8 +46,8 @@ impl HalApi for hal::api::Vulkan { fn hub(global: &Global) -> &Hub { &global.hubs.vulkan } - fn get_surface(surface: &Surface) -> Option<&Self::Surface> { - surface.raw.downcast_ref::() + fn surface_as_hal(surface: &Surface) -> Option<&Self::Surface> { + surface.vulkan.as_ref() } } @@ -67,8 +67,8 @@ impl HalApi for hal::api::Metal { fn hub(global: &Global) -> &Hub { &global.hubs.metal } - fn get_surface(surface: &Surface) -> Option<&Self::Surface> { - surface.raw.downcast_ref::() + fn surface_as_hal(surface: &Surface) -> Option<&Self::Surface> { + surface.metal.as_ref() } } @@ -88,8 +88,8 @@ impl HalApi for hal::api::Dx12 { fn hub(global: &Global) -> &Hub { &global.hubs.dx12 } - fn get_surface(surface: &Surface) -> Option<&Self::Surface> { - surface.raw.downcast_ref::() + fn surface_as_hal(surface: &Surface) -> Option<&Self::Surface> { + surface.dx12.as_ref() } } @@ -110,7 +110,7 @@ impl HalApi for hal::api::Gles { fn hub(global: &Global) -> &Hub { &global.hubs.gl } - fn get_surface(surface: &Surface) -> Option<&Self::Surface> { - surface.raw.downcast_ref::() + fn surface_as_hal(surface: &Surface) -> Option<&Self::Surface> { + surface.gl.as_ref() } } diff --git a/third_party/rust/wgpu-core/src/hub.rs b/third_party/rust/wgpu-core/src/hub.rs index 6fdc0c2e57e4..eb57411d98ca 100644 --- a/third_party/rust/wgpu-core/src/hub.rs +++ b/third_party/rust/wgpu-core/src/hub.rs @@ -241,7 +241,7 @@ impl Hub { if let Element::Occupied(ref surface, _epoch) = *element { if let Some(ref mut present) = surface.presentation.lock().take() { if let Some(device) = present.device.downcast_ref::() { - let suf = A::get_surface(surface); + let suf = A::surface_as_hal(surface); unsafe { suf.unwrap().unconfigure(device.raw()); //TODO: we could destroy the surface here diff --git a/third_party/rust/wgpu-core/src/identity.rs b/third_party/rust/wgpu-core/src/identity.rs index d76d29341ac9..c89731f7afa5 100644 --- a/third_party/rust/wgpu-core/src/identity.rs +++ b/third_party/rust/wgpu-core/src/identity.rs @@ -1,8 +1,8 @@ -use parking_lot::Mutex; use wgt::Backend; use crate::{ id::{Id, Marker}, + lock::{rank, Mutex}, Epoch, Index, }; use std::{fmt::Debug, marker::PhantomData}; @@ -16,31 +16,26 @@ enum IdSource { /// A simple structure to allocate [`Id`] identifiers. /// -/// Calling [`alloc`] returns a fresh, never-before-seen id. Calling [`free`] +/// Calling [`alloc`] returns a fresh, never-before-seen id. Calling [`release`] /// marks an id as dead; it will never be returned again by `alloc`. /// -/// Use `IdentityManager::default` to construct new instances. +/// `IdentityValues` returns `Id`s whose index values are suitable for use as +/// indices into a `Vec` that holds those ids' referents: /// -/// `IdentityManager` returns `Id`s whose index values are suitable for use as -/// indices into a `Storage` that holds those ids' referents: +/// - Every live id has a distinct index value. Every live id's index +/// selects a distinct element in the vector. /// -/// - Every live id has a distinct index value. Each live id's index selects a -/// distinct element in the vector. -/// -/// - `IdentityManager` prefers low index numbers. If you size your vector to +/// - `IdentityValues` prefers low index numbers. If you size your vector to /// accommodate the indices produced here, the vector's length will reflect /// the highwater mark of actual occupancy. /// -/// - `IdentityManager` reuses the index values of freed ids before returning +/// - `IdentityValues` reuses the index values of freed ids before returning /// ids with new index values. Freed vector entries get reused. /// -/// See the module-level documentation for an overview of how this -/// fits together. -/// /// [`Id`]: crate::id::Id /// [`Backend`]: wgt::Backend; -/// [`alloc`]: IdentityManager::alloc -/// [`free`]: IdentityManager::free +/// [`alloc`]: IdentityValues::alloc +/// [`release`]: IdentityValues::release #[derive(Debug)] pub(super) struct IdentityValues { free: Vec<(Index, Epoch)>, @@ -122,12 +117,15 @@ impl IdentityManager { impl IdentityManager { pub fn new() -> Self { Self { - values: Mutex::new(IdentityValues { - free: Vec::new(), - next_index: 0, - count: 0, - id_source: IdSource::None, - }), + values: Mutex::new( + rank::IDENTITY_MANAGER_VALUES, + IdentityValues { + free: Vec::new(), + next_index: 0, + count: 0, + id_source: IdSource::None, + }, + ), _phantom: PhantomData, } } diff --git a/third_party/rust/wgpu-core/src/instance.rs b/third_party/rust/wgpu-core/src/instance.rs index 20e67d5f71bb..f0a3890c1e1c 100644 --- a/third_party/rust/wgpu-core/src/instance.rs +++ b/third_party/rust/wgpu-core/src/instance.rs @@ -1,19 +1,19 @@ +use std::collections::HashMap; use std::sync::Arc; use crate::{ - any_surface::AnySurface, api_log, device::{queue::Queue, resource::Device, DeviceDescriptor}, global::Global, hal_api::HalApi, id::markers, id::{AdapterId, DeviceId, Id, Marker, QueueId, SurfaceId}, + lock::{rank, Mutex}, present::Presentation, resource::{Resource, ResourceInfo, ResourceType}, resource_log, LabelHelpers, DOWNLEVEL_WARNING_MESSAGE, }; -use parking_lot::Mutex; use wgt::{Backend, Backends, PowerPreference}; use hal::{Adapter as _, Instance as _, OpenDevice}; @@ -21,6 +21,7 @@ use thiserror::Error; pub type RequestAdapterOptions = wgt::RequestAdapterOptions; type HalInstance = ::Instance; +type HalSurface = ::Surface; #[derive(Clone, Debug, Error)] #[error("Limit '{name}' value {requested} is better than allowed {allowed}")] @@ -113,31 +114,36 @@ impl Instance { } pub(crate) fn destroy_surface(&self, surface: Surface) { - fn destroy(instance: &Option, surface: AnySurface) { - unsafe { - if let Some(suf) = surface.take::() { - instance.as_ref().unwrap().destroy_surface(suf); + fn destroy(instance: &Option, mut surface: Option>) { + if let Some(surface) = surface.take() { + unsafe { + instance.as_ref().unwrap().destroy_surface(surface); } } } - match surface.raw.backend() { - #[cfg(vulkan)] - Backend::Vulkan => destroy::(&self.vulkan, surface.raw), - #[cfg(metal)] - Backend::Metal => destroy::(&self.metal, surface.raw), - #[cfg(dx12)] - Backend::Dx12 => destroy::(&self.dx12, surface.raw), - #[cfg(gles)] - Backend::Gl => destroy::(&self.gl, surface.raw), - _ => unreachable!(), - } + #[cfg(vulkan)] + destroy::(&self.vulkan, surface.vulkan); + #[cfg(metal)] + destroy::(&self.metal, surface.metal); + #[cfg(dx12)] + destroy::(&self.dx12, surface.dx12); + #[cfg(gles)] + destroy::(&self.gl, surface.gl); } } pub struct Surface { pub(crate) presentation: Mutex>, pub(crate) info: ResourceInfo, - pub(crate) raw: AnySurface, + + #[cfg(vulkan)] + pub vulkan: Option>, + #[cfg(metal)] + pub metal: Option>, + #[cfg(dx12)] + pub dx12: Option>, + #[cfg(gles)] + pub gl: Option>, } impl Resource for Surface { @@ -163,7 +169,7 @@ impl Surface { &self, adapter: &Adapter, ) -> Result { - let suf = A::get_surface(self).ok_or(GetSurfaceSupportError::Unsupported)?; + let suf = A::surface_as_hal(self).ok_or(GetSurfaceSupportError::Unsupported)?; profiling::scope!("surface_capabilities"); let caps = unsafe { adapter @@ -203,7 +209,7 @@ impl Adapter { } pub fn is_surface_supported(&self, surface: &Surface) -> bool { - let suf = A::get_surface(surface); + let suf = A::surface_as_hal(surface); // If get_surface returns None, then the API does not advertise support for the surface. // @@ -461,13 +467,25 @@ pub enum RequestAdapterError { #[derive(Clone, Debug, Error)] #[non_exhaustive] pub enum CreateSurfaceError { - #[error("No backend is available")] - NoSupportedBackend, - #[error(transparent)] - InstanceError(#[from] hal::InstanceError), + #[error("The backend {0} was not enabled on the instance.")] + BackendNotEnabled(Backend), + #[error("Failed to create surface for any enabled backend: {0:?}")] + FailedToCreateSurfaceForAnyBackend(HashMap), } impl Global { + /// Creates a new surface targeting the given display/window handles. + /// + /// Internally attempts to create hal surfaces for all enabled backends. + /// + /// Fails only if creation for surfaces for all enabled backends fails in which case + /// the error for each enabled backend is listed. + /// Vice versa, if creation for any backend succeeds, success is returned. + /// Surface creation errors are logged to the debug log in any case. + /// + /// id_in: + /// - If `Some`, the id to assign to the surface. A new one will be generated otherwise. + /// /// # Safety /// /// - `display_handle` must be a valid object to create a surface upon. @@ -483,51 +501,86 @@ impl Global { profiling::scope!("Instance::create_surface"); fn init( + errors: &mut HashMap, + any_created: &mut bool, + backend: Backend, inst: &Option, display_handle: raw_window_handle::RawDisplayHandle, window_handle: raw_window_handle::RawWindowHandle, - ) -> Option> { - inst.as_ref().map(|inst| unsafe { - match inst.create_surface(display_handle, window_handle) { - Ok(raw) => Ok(AnySurface::new::(raw)), - Err(e) => Err(e), + ) -> Option> { + inst.as_ref().and_then(|inst| { + match unsafe { inst.create_surface(display_handle, window_handle) } { + Ok(raw) => { + *any_created = true; + Some(raw) + } + Err(err) => { + log::debug!( + "Instance::create_surface: failed to create surface for {:?}: {:?}", + backend, + err + ); + errors.insert(backend, err); + None + } } }) } - let mut hal_surface: Option> = None; - - #[cfg(vulkan)] - if hal_surface.is_none() { - hal_surface = - init::(&self.instance.vulkan, display_handle, window_handle); - } - #[cfg(metal)] - if hal_surface.is_none() { - hal_surface = - init::(&self.instance.metal, display_handle, window_handle); - } - #[cfg(dx12)] - if hal_surface.is_none() { - hal_surface = - init::(&self.instance.dx12, display_handle, window_handle); - } - #[cfg(gles)] - if hal_surface.is_none() { - hal_surface = init::(&self.instance.gl, display_handle, window_handle); - } - - let hal_surface = hal_surface.ok_or(CreateSurfaceError::NoSupportedBackend)??; + let mut errors = HashMap::default(); + let mut any_created = false; let surface = Surface { - presentation: Mutex::new(None), + presentation: Mutex::new(rank::SURFACE_PRESENTATION, None), info: ResourceInfo::new("", None), - raw: hal_surface, + + #[cfg(vulkan)] + vulkan: init::( + &mut errors, + &mut any_created, + Backend::Vulkan, + &self.instance.vulkan, + display_handle, + window_handle, + ), + #[cfg(metal)] + metal: init::( + &mut errors, + &mut any_created, + Backend::Metal, + &self.instance.metal, + display_handle, + window_handle, + ), + #[cfg(dx12)] + dx12: init::( + &mut errors, + &mut any_created, + Backend::Dx12, + &self.instance.dx12, + display_handle, + window_handle, + ), + #[cfg(gles)] + gl: init::( + &mut errors, + &mut any_created, + Backend::Gl, + &self.instance.gl, + display_handle, + window_handle, + ), }; - #[allow(clippy::arc_with_non_send_sync)] - let (id, _) = self.surfaces.prepare(id_in).assign(Arc::new(surface)); - Ok(id) + if any_created { + #[allow(clippy::arc_with_non_send_sync)] + let (id, _) = self.surfaces.prepare(id_in).assign(Arc::new(surface)); + Ok(id) + } else { + Err(CreateSurfaceError::FailedToCreateSurfaceForAnyBackend( + errors, + )) + } } /// # Safety @@ -538,29 +591,57 @@ impl Global { &self, layer: *mut std::ffi::c_void, id_in: Option, - ) -> SurfaceId { + ) -> Result { profiling::scope!("Instance::create_surface_metal"); let surface = Surface { - presentation: Mutex::new(None), + presentation: Mutex::new(rank::SURFACE_PRESENTATION, None), info: ResourceInfo::new("", None), - raw: { - let hal_surface = self - .instance - .metal - .as_ref() - .map(|inst| { - // we don't want to link to metal-rs for this - #[allow(clippy::transmute_ptr_to_ref)] - inst.create_surface_from_layer(unsafe { std::mem::transmute(layer) }) - }) - .unwrap(); - AnySurface::new::(hal_surface) - }, + metal: Some(self.instance.metal.as_ref().map_or( + Err(CreateSurfaceError::BackendNotEnabled(Backend::Metal)), + |inst| { + // we don't want to link to metal-rs for this + #[allow(clippy::transmute_ptr_to_ref)] + Ok(inst.create_surface_from_layer(unsafe { std::mem::transmute(layer) })) + }, + )?), + #[cfg(dx12)] + dx12: None, + #[cfg(vulkan)] + vulkan: None, + #[cfg(gles)] + gl: None, }; let (id, _) = self.surfaces.prepare(id_in).assign(Arc::new(surface)); - id + Ok(id) + } + + #[cfg(dx12)] + fn instance_create_surface_dx12( + &self, + id_in: Option, + create_surface_func: impl FnOnce(&HalInstance) -> HalSurface, + ) -> Result { + let surface = Surface { + presentation: Mutex::new(rank::SURFACE_PRESENTATION, None), + info: ResourceInfo::new("", None), + dx12: Some(create_surface_func( + self.instance + .dx12 + .as_ref() + .ok_or(CreateSurfaceError::BackendNotEnabled(Backend::Dx12))?, + )), + #[cfg(metal)] + metal: None, + #[cfg(vulkan)] + vulkan: None, + #[cfg(gles)] + gl: None, + }; + + let (id, _) = self.surfaces.prepare(id_in).assign(Arc::new(surface)); + Ok(id) } #[cfg(dx12)] @@ -571,25 +652,11 @@ impl Global { &self, visual: *mut std::ffi::c_void, id_in: Option, - ) -> SurfaceId { + ) -> Result { profiling::scope!("Instance::instance_create_surface_from_visual"); - - let surface = Surface { - presentation: Mutex::new(None), - info: ResourceInfo::new("", None), - raw: { - let hal_surface = self - .instance - .dx12 - .as_ref() - .map(|inst| unsafe { inst.create_surface_from_visual(visual as _) }) - .unwrap(); - AnySurface::new::(hal_surface) - }, - }; - - let (id, _) = self.surfaces.prepare(id_in).assign(Arc::new(surface)); - id + self.instance_create_surface_dx12(id_in, |inst| unsafe { + inst.create_surface_from_visual(visual as _) + }) } #[cfg(dx12)] @@ -600,25 +667,11 @@ impl Global { &self, surface_handle: *mut std::ffi::c_void, id_in: Option, - ) -> SurfaceId { + ) -> Result { profiling::scope!("Instance::instance_create_surface_from_surface_handle"); - - let surface = Surface { - presentation: Mutex::new(None), - info: ResourceInfo::new("", None), - raw: { - let hal_surface = self - .instance - .dx12 - .as_ref() - .map(|inst| unsafe { inst.create_surface_from_surface_handle(surface_handle) }) - .unwrap(); - AnySurface::new::(hal_surface) - }, - }; - - let (id, _) = self.surfaces.prepare(id_in).assign(Arc::new(surface)); - id + self.instance_create_surface_dx12(id_in, |inst| unsafe { + inst.create_surface_from_surface_handle(surface_handle) + }) } #[cfg(dx12)] @@ -629,27 +682,11 @@ impl Global { &self, swap_chain_panel: *mut std::ffi::c_void, id_in: Option, - ) -> SurfaceId { + ) -> Result { profiling::scope!("Instance::instance_create_surface_from_swap_chain_panel"); - - let surface = Surface { - presentation: Mutex::new(None), - info: ResourceInfo::new("", None), - raw: { - let hal_surface = self - .instance - .dx12 - .as_ref() - .map(|inst| unsafe { - inst.create_surface_from_swap_chain_panel(swap_chain_panel as _) - }) - .unwrap(); - AnySurface::new::(hal_surface) - }, - }; - - let (id, _) = self.surfaces.prepare(id_in).assign(Arc::new(surface)); - id + self.instance_create_surface_dx12(id_in, |inst| unsafe { + inst.create_surface_from_swap_chain_panel(swap_chain_panel as _) + }) } pub fn surface_drop(&self, id: SurfaceId) { @@ -657,11 +694,15 @@ impl Global { api_log!("Surface::drop {id:?}"); - fn unconfigure(global: &Global, surface: &AnySurface, present: &Presentation) { - let hub = HalApi::hub(global); - if let Some(hal_surface) = surface.downcast_ref::() { + fn unconfigure( + global: &Global, + surface: &Option>, + present: &Presentation, + ) { + if let Some(surface) = surface { + let hub = HalApi::hub(global); if let Some(device) = present.device.downcast_ref::() { - hub.surface_unconfigure(device, hal_surface); + hub.surface_unconfigure(device, surface); } } } @@ -669,15 +710,16 @@ impl Global { let surface = self.surfaces.unregister(id); let surface = Arc::into_inner(surface.unwrap()) .expect("Surface cannot be destroyed because is still in use"); + if let Some(present) = surface.presentation.lock().take() { #[cfg(vulkan)] - unconfigure::(self, &surface.raw, &present); + unconfigure::(self, &surface.vulkan, &present); #[cfg(metal)] - unconfigure::(self, &surface.raw, &present); + unconfigure::(self, &surface.metal, &present); #[cfg(dx12)] - unconfigure::(self, &surface.raw, &present); + unconfigure::(self, &surface.dx12, &present); #[cfg(gles)] - unconfigure::(self, &surface.raw, &present); + unconfigure::(self, &surface.gl, &present); } self.instance.destroy_surface(surface); } @@ -785,7 +827,7 @@ impl Global { adapters.retain(|exposed| exposed.info.device_type == wgt::DeviceType::Cpu); } if let Some(surface) = compatible_surface { - let surface = &A::get_surface(surface); + let surface = &A::surface_as_hal(surface); adapters.retain(|exposed| unsafe { // If the surface does not exist for this backend, // then the surface is not supported. diff --git a/third_party/rust/wgpu-core/src/lib.rs b/third_party/rust/wgpu-core/src/lib.rs index b00c51825ab2..032d85a4bc2a 100644 --- a/third_party/rust/wgpu-core/src/lib.rs +++ b/third_party/rust/wgpu-core/src/lib.rs @@ -50,7 +50,6 @@ unused_qualifications )] -pub mod any_surface; pub mod binding_model; pub mod command; mod conv; @@ -64,6 +63,7 @@ pub mod id; pub mod identity; mod init_tracker; pub mod instance; +mod lock; pub mod pipeline; mod pool; pub mod present; diff --git a/third_party/rust/wgpu-core/src/lock/mod.rs b/third_party/rust/wgpu-core/src/lock/mod.rs new file mode 100644 index 000000000000..664ab196b3d6 --- /dev/null +++ b/third_party/rust/wgpu-core/src/lock/mod.rs @@ -0,0 +1,41 @@ +//! Instrumented lock types. +//! +//! This module defines a set of instrumented wrappers for the lock +//! types used in `wgpu-core` ([`Mutex`], [`RwLock`], and +//! [`SnatchLock`]) that help us understand and validate `wgpu-core` +//! synchronization. +//! +//! - The [`ranked`] module defines lock types that perform run-time +//! checks to ensure that each thread acquires locks only in a +//! specific order, to prevent deadlocks. +//! +//! - The [`vanilla`] module defines lock types that are +//! uninstrumented, no-overhead wrappers around the standard lock +//! types. +//! +//! (We plan to add more wrappers in the future.) +//! +//! If the `wgpu_validate_locks` config is set (for example, with +//! `RUSTFLAGS='--cfg wgpu_validate_locks'`), `wgpu-core` uses the +//! [`ranked`] module's locks. We hope to make this the default for +//! debug builds soon. +//! +//! Otherwise, `wgpu-core` uses the [`vanilla`] module's locks. +//! +//! [`Mutex`]: parking_lot::Mutex +//! [`RwLock`]: parking_lot::RwLock +//! [`SnatchLock`]: crate::snatch::SnatchLock + +pub mod rank; + +#[cfg_attr(not(wgpu_validate_locks), allow(dead_code))] +mod ranked; + +#[cfg_attr(wgpu_validate_locks, allow(dead_code))] +mod vanilla; + +#[cfg(wgpu_validate_locks)] +pub use ranked::{Mutex, MutexGuard}; + +#[cfg(not(wgpu_validate_locks))] +pub use vanilla::{Mutex, MutexGuard}; diff --git a/third_party/rust/wgpu-core/src/lock/rank.rs b/third_party/rust/wgpu-core/src/lock/rank.rs new file mode 100644 index 000000000000..381ba06d1a6d --- /dev/null +++ b/third_party/rust/wgpu-core/src/lock/rank.rs @@ -0,0 +1,143 @@ +//! Ranks for `wgpu-core` locks, restricting acquisition order. +//! +//! See [`LockRank`]. + +/// The rank of a lock. +/// +/// Each [`Mutex`], [`RwLock`], and [`SnatchLock`] in `wgpu-core` has been +/// assigned a *rank*: a node in the DAG defined at the bottom of +/// `wgpu-core/src/lock/rank.rs`. The rank of the most recently +/// acquired lock you are still holding determines which locks you may +/// attempt to acquire next. +/// +/// When you create a lock in `wgpu-core`, you must specify its rank +/// by passing in a [`LockRank`] value. This module declares a +/// pre-defined set of ranks to cover everything in `wgpu-core`, named +/// after the type in which they occur, and the name of the type's +/// field that is a lock. For example, [`CommandBuffer::data`] is a +/// `Mutex`, and its rank here is the constant +/// [`COMMAND_BUFFER_DATA`]. +/// +/// [`Mutex`]: parking_lot::Mutex +/// [`RwLock`]: parking_lot::RwLock +/// [`SnatchLock`]: crate::snatch::SnatchLock +/// [`CommandBuffer::data`]: crate::command::CommandBuffer::data +#[derive(Debug, Copy, Clone)] +pub struct LockRank { + /// The bit representing this lock. + /// + /// There should only be a single bit set in this value. + pub(super) bit: LockRankSet, + + /// A bitmask of permitted successor ranks. + /// + /// If `rank` is the rank of the most recently acquired lock we + /// are still holding, then `rank.followers` is the mask of + /// locks we are allowed to acquire next. + /// + /// The `define_lock_ranks!` macro ensures that there are no + /// cycles in the graph of lock ranks and their followers. + pub(super) followers: LockRankSet, +} + +/// Define a set of lock ranks, and each rank's permitted successors. +macro_rules! define_lock_ranks { + { + $( + $( #[ $attr:meta ] )* + rank $name:ident $member:literal followed by { $( $follower:ident ),* $(,)? }; + )* + } => { + // An enum that assigns a unique number to each rank. + #[allow(non_camel_case_types, clippy::upper_case_acronyms)] + enum LockRankNumber { $( $name, )* } + + bitflags::bitflags! { + #[derive(Debug, Copy, Clone, Eq, PartialEq)] + /// A bitflags type representing a set of lock ranks. + pub struct LockRankSet: u32 { + $( + const $name = 1 << (LockRankNumber:: $name as u32); + )* + } + } + + impl LockRankSet { + pub fn name(self) -> &'static str { + match self { + $( + LockRankSet:: $name => $member, + )* + _ => "", + } + } + } + + $( + // If there is any cycle in the ranking, the initializers + // for `followers` will be cyclic, and rustc will give us + // an error message explaining the cycle. + $( #[ $attr ] )* + pub const $name: LockRank = LockRank { + bit: LockRankSet:: $name, + followers: LockRankSet::empty() $( .union($follower.bit) )*, + }; + )* + } +} + +define_lock_ranks! { + rank COMMAND_BUFFER_DATA "CommandBuffer::data" followed by { + DEVICE_USAGE_SCOPES, + SHARED_TRACKER_INDEX_ALLOCATOR_INNER, + BUFFER_BIND_GROUP_STATE_BUFFERS, + TEXTURE_BIND_GROUP_STATE_TEXTURES, + BUFFER_MAP_STATE, + STATELESS_BIND_GROUP_STATE_RESOURCES, + }; + rank STAGING_BUFFER_RAW "StagingBuffer::raw" followed by { }; + rank COMMAND_ALLOCATOR_FREE_ENCODERS "CommandAllocator::free_encoders" followed by { + SHARED_TRACKER_INDEX_ALLOCATOR_INNER, + }; + rank DEVICE_TRACKERS "Device::trackers" followed by { }; + rank DEVICE_LIFE_TRACKER "Device::life_tracker" followed by { + COMMAND_ALLOCATOR_FREE_ENCODERS, + // Uncomment this to see an interesting cycle. + // DEVICE_TEMP_SUSPECTED, + }; + rank DEVICE_TEMP_SUSPECTED "Device::temp_suspected" followed by { + SHARED_TRACKER_INDEX_ALLOCATOR_INNER, + COMMAND_BUFFER_DATA, + DEVICE_TRACKERS, + }; + rank DEVICE_PENDING_WRITES "Device::pending_writes" followed by { + COMMAND_ALLOCATOR_FREE_ENCODERS, + SHARED_TRACKER_INDEX_ALLOCATOR_INNER, + DEVICE_LIFE_TRACKER, + }; + rank DEVICE_DEFERRED_DESTROY "Device::deferred_destroy" followed by { }; + #[allow(dead_code)] + rank DEVICE_TRACE "Device::trace" followed by { }; + rank DEVICE_USAGE_SCOPES "Device::usage_scopes" followed by { }; + rank BUFFER_SYNC_MAPPED_WRITES "Buffer::sync_mapped_writes" followed by { }; + rank BUFFER_MAP_STATE "Buffer::map_state" followed by { DEVICE_PENDING_WRITES }; + rank BUFFER_BIND_GROUPS "Buffer::bind_groups" followed by { }; + rank TEXTURE_VIEWS "Texture::views" followed by { }; + rank TEXTURE_BIND_GROUPS "Texture::bind_groups" followed by { }; + rank IDENTITY_MANAGER_VALUES "IdentityManager::values" followed by { }; + rank RESOURCE_POOL_INNER "ResourcePool::inner" followed by { }; + rank BUFFER_BIND_GROUP_STATE_BUFFERS "BufferBindGroupState::buffers" followed by { }; + rank STATELESS_BIND_GROUP_STATE_RESOURCES "StatelessBindGroupState::resources" followed by { }; + rank TEXTURE_BIND_GROUP_STATE_TEXTURES "TextureBindGroupState::textures" followed by { }; + rank SHARED_TRACKER_INDEX_ALLOCATOR_INNER "SharedTrackerIndexAllocator::inner" followed by { }; + rank SURFACE_PRESENTATION "Surface::presentation" followed by { }; + + #[cfg(test)] + rank PAWN "pawn" followed by { ROOK, BISHOP }; + #[cfg(test)] + rank ROOK "rook" followed by { KNIGHT }; + #[cfg(test)] + rank KNIGHT "knight" followed by { }; + #[cfg(test)] + rank BISHOP "bishop" followed by { }; +} diff --git a/third_party/rust/wgpu-core/src/lock/ranked.rs b/third_party/rust/wgpu-core/src/lock/ranked.rs new file mode 100644 index 000000000000..b24e2a35831c --- /dev/null +++ b/third_party/rust/wgpu-core/src/lock/ranked.rs @@ -0,0 +1,264 @@ +//! Lock types that enforce well-ranked lock acquisition order. +//! +//! This module's [`Mutex`] type is instrumented to check that `wgpu-core` +//! acquires locks according to their rank, to prevent deadlocks. To use it, +//! put `--cfg wgpu_validate_locks` in `RUSTFLAGS`. +//! +//! The [`LockRank`] constants in the [`lock::rank`] module describe edges in a +//! directed graph of lock acquisitions: each lock's rank says, if this is the most +//! recently acquired lock that you are still holding, then these are the locks you +//! are allowed to acquire next. +//! +//! As long as this graph doesn't have cycles, any number of threads can acquire +//! locks along paths through the graph without deadlock: +//! +//! - Assume that if a thread is holding a lock, then it will either release it, +//! or block trying to acquire another one. No thread just sits on its locks +//! forever for unrelated reasons. If it did, then that would be a source of +//! deadlock "outside the system" that we can't do anything about. +//! +//! - This module asserts that threads acquire and release locks in a stack-like +//! order: a lock is dropped only when it is the *most recently acquired* lock +//! *still held* - call this the "youngest" lock. This stack-like ordering +//! isn't a Rust requirement; Rust lets you drop guards in any order you like. +//! This is a restriction we impose. +//! +//! - Consider the directed graph whose nodes are locks, and whose edges go from +//! each lock to its permitted followers, the locks in its [`LockRank::followers`] +//! set. The definition of the [`lock::rank`] module's [`LockRank`] constants +//! ensures that this graph has no cycles, including trivial cycles from a node to +//! itself. +//! +//! - This module then asserts that each thread attempts to acquire a lock only if +//! it is among its youngest lock's permitted followers. Thus, as a thread +//! acquires locks, it must be traversing a path through the graph along its +//! edges. +//! +//! - Because there are no cycles in the graph, whenever one thread is blocked +//! waiting to acquire a lock, that lock must be held by a different thread: if +//! you were allowed to acquire a lock you already hold, that would be a cycle in +//! the graph. +//! +//! - Furthermore, because the graph has no cycles, as we work our way from each +//! thread to the thread it is blocked waiting for, we must eventually reach an +//! end point: there must be some thread that is able to acquire its next lock, or +//! that is about to release a lock. +//! +//! Thus, the system as a whole is always able to make progress: it is free of +//! deadlocks. +//! +//! Note that this validation only monitors each thread's behavior in isolation: +//! there's only thread-local state, nothing communicated between threads. So we +//! don't detect deadlocks, per se, only the potential to cause deadlocks. This +//! means that the validation is conservative, but more reproducible, since it's not +//! dependent on any particular interleaving of execution. +//! +//! [`lock::rank`]: crate::lock::rank + +use super::rank::LockRank; +use std::{cell::Cell, panic::Location}; + +/// A `Mutex` instrumented for deadlock prevention. +/// +/// This is just a wrapper around a [`parking_lot::Mutex`], along with +/// its rank in the `wgpu_core` lock ordering. +/// +/// For details, see [the module documentation][mod]. +/// +/// [mod]: crate::lock::ranked +pub struct Mutex { + inner: parking_lot::Mutex, + rank: LockRank, +} + +/// A guard produced by locking [`Mutex`]. +/// +/// This is just a wrapper around a [`parking_lot::MutexGuard`], along +/// with the state needed to track lock acquisition. +/// +/// For details, see [the module documentation][mod]. +/// +/// [mod]: crate::lock::ranked +pub struct MutexGuard<'a, T> { + inner: parking_lot::MutexGuard<'a, T>, + saved: LockState, +} + +/// Per-thread state for the deadlock checker. +#[derive(Debug, Copy, Clone)] +struct LockState { + /// The last lock we acquired, and where. + last_acquired: Option<(LockRank, &'static Location<'static>)>, + + /// The number of locks currently held. + /// + /// This is used to enforce stack-like lock acquisition and release. + depth: u32, +} + +impl LockState { + const INITIAL: LockState = LockState { + last_acquired: None, + depth: 0, + }; +} + +impl Mutex { + #[inline] + pub fn new(rank: LockRank, value: T) -> Mutex { + Mutex { + inner: parking_lot::Mutex::new(value), + rank, + } + } + + #[inline] + #[track_caller] + pub fn lock(&self) -> MutexGuard { + let state = LOCK_STATE.get(); + let location = Location::caller(); + // Initially, it's fine to acquire any lock. So we only + // need to check when `last_acquired` is `Some`. + if let Some((ref last_rank, ref last_location)) = state.last_acquired { + assert!( + last_rank.followers.contains(self.rank.bit), + "Attempt to acquire nested mutexes in wrong order:\n\ + last locked {:<35} at {}\n\ + now locking {:<35} at {}\n\ + Locking {} after locking {} is not permitted.", + last_rank.bit.name(), + last_location, + self.rank.bit.name(), + location, + self.rank.bit.name(), + last_rank.bit.name(), + ); + } + LOCK_STATE.set(LockState { + last_acquired: Some((self.rank, location)), + depth: state.depth + 1, + }); + MutexGuard { + inner: self.inner.lock(), + saved: state, + } + } +} + +impl<'a, T> Drop for MutexGuard<'a, T> { + fn drop(&mut self) { + let prior = LOCK_STATE.replace(self.saved); + + // Although Rust allows mutex guards to be dropped in any + // order, this analysis requires that locks be acquired and + // released in stack order: the next lock to be released must be + // the most recently acquired lock still held. + assert_eq!( + prior.depth, + self.saved.depth + 1, + "Lock not released in stacking order" + ); + } +} + +thread_local! { + static LOCK_STATE: Cell = const { Cell::new(LockState::INITIAL) }; +} + +impl<'a, T> std::ops::Deref for MutexGuard<'a, T> { + type Target = T; + + fn deref(&self) -> &Self::Target { + self.inner.deref() + } +} + +impl<'a, T> std::ops::DerefMut for MutexGuard<'a, T> { + fn deref_mut(&mut self) -> &mut Self::Target { + self.inner.deref_mut() + } +} + +impl std::fmt::Debug for Mutex { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + self.inner.fmt(f) + } +} + +/// Locks can be acquired in the order indicated by their ranks. +#[test] +fn permitted() { + use super::rank; + + let lock1 = Mutex::new(rank::PAWN, ()); + let lock2 = Mutex::new(rank::ROOK, ()); + + let _guard1 = lock1.lock(); + let _guard2 = lock2.lock(); +} + +/// Locks can only be acquired in the order indicated by their ranks. +#[test] +#[should_panic(expected = "Locking pawn after locking rook")] +fn forbidden_unrelated() { + use super::rank; + + let lock1 = Mutex::new(rank::ROOK, ()); + let lock2 = Mutex::new(rank::PAWN, ()); + + let _guard1 = lock1.lock(); + let _guard2 = lock2.lock(); +} + +/// Lock acquisitions can't skip ranks. +/// +/// These two locks *could* be acquired in this order, but only if other locks +/// are acquired in between them. Skipping ranks isn't allowed. +#[test] +#[should_panic(expected = "Locking knight after locking pawn")] +fn forbidden_skip() { + use super::rank; + + let lock1 = Mutex::new(rank::PAWN, ()); + let lock2 = Mutex::new(rank::KNIGHT, ()); + + let _guard1 = lock1.lock(); + let _guard2 = lock2.lock(); +} + +/// Locks can be acquired and released in a stack-like order. +#[test] +fn stack_like() { + use super::rank; + + let lock1 = Mutex::new(rank::PAWN, ()); + let lock2 = Mutex::new(rank::ROOK, ()); + let lock3 = Mutex::new(rank::BISHOP, ()); + + let guard1 = lock1.lock(); + let guard2 = lock2.lock(); + drop(guard2); + + let guard3 = lock3.lock(); + drop(guard3); + drop(guard1); +} + +/// Locks can only be acquired and released in a stack-like order. +#[test] +#[should_panic(expected = "Lock not released in stacking order")] +fn non_stack_like() { + use super::rank; + + let lock1 = Mutex::new(rank::PAWN, ()); + let lock2 = Mutex::new(rank::ROOK, ()); + + let guard1 = lock1.lock(); + let guard2 = lock2.lock(); + + // Avoid a double panic from dropping this while unwinding due to the panic + // we're testing for. + std::mem::forget(guard2); + + drop(guard1); +} diff --git a/third_party/rust/wgpu-core/src/lock/vanilla.rs b/third_party/rust/wgpu-core/src/lock/vanilla.rs new file mode 100644 index 000000000000..47584b2abf7c --- /dev/null +++ b/third_party/rust/wgpu-core/src/lock/vanilla.rs @@ -0,0 +1,53 @@ +//! Plain, uninstrumented wrappers around [`parking_lot`] lock types. +//! +//! These definitions are used when no particular lock instrumentation +//! Cargo feature is selected. + +/// A plain wrapper around [`parking_lot::Mutex`]. +/// +/// This is just like [`parking_lot::Mutex`], except that our [`new`] +/// method takes a rank, indicating where the new mutex should sitc in +/// `wgpu-core`'s lock ordering. The rank is ignored. +/// +/// See the [`lock`] module documentation for other wrappers. +/// +/// [`new`]: Mutex::new +/// [`lock`]: crate::lock +pub struct Mutex(parking_lot::Mutex); + +/// A guard produced by locking [`Mutex`]. +/// +/// This is just a wrapper around a [`parking_lot::MutexGuard`]. +pub struct MutexGuard<'a, T>(parking_lot::MutexGuard<'a, T>); + +impl Mutex { + #[inline] + pub fn new(_rank: super::rank::LockRank, value: T) -> Mutex { + Mutex(parking_lot::Mutex::new(value)) + } + + #[inline] + pub fn lock(&self) -> MutexGuard { + MutexGuard(self.0.lock()) + } +} + +impl<'a, T> std::ops::Deref for MutexGuard<'a, T> { + type Target = T; + + fn deref(&self) -> &Self::Target { + self.0.deref() + } +} + +impl<'a, T> std::ops::DerefMut for MutexGuard<'a, T> { + fn deref_mut(&mut self) -> &mut Self::Target { + self.0.deref_mut() + } +} + +impl std::fmt::Debug for Mutex { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + self.0.fmt(f) + } +} diff --git a/third_party/rust/wgpu-core/src/pipeline.rs b/third_party/rust/wgpu-core/src/pipeline.rs index b1689bd69141..6f34155a9a08 100644 --- a/third_party/rust/wgpu-core/src/pipeline.rs +++ b/third_party/rust/wgpu-core/src/pipeline.rs @@ -241,6 +241,11 @@ pub struct ProgrammableStageDescriptor<'a> { /// /// The value may represent any of WGSL's concrete scalar types. pub constants: Cow<'a, naga::back::PipelineConstants>, + /// Whether workgroup scoped memory will be initialized with zero values for this stage. + /// + /// This is required by the WebGPU spec, but may have overhead which can be avoided + /// for cross-platform applications + pub zero_initialize_workgroup_memory: bool, } /// Number of implicit bind groups derived at pipeline creation. diff --git a/third_party/rust/wgpu-core/src/pool.rs b/third_party/rust/wgpu-core/src/pool.rs index 47de6d5febd4..7d17f3a7a368 100644 --- a/third_party/rust/wgpu-core/src/pool.rs +++ b/third_party/rust/wgpu-core/src/pool.rs @@ -5,8 +5,8 @@ use std::{ }; use once_cell::sync::OnceCell; -use parking_lot::Mutex; +use crate::lock::{rank, Mutex}; use crate::{PreHashedKey, PreHashedMap}; type SlotInner = Weak; @@ -22,13 +22,15 @@ pub struct ResourcePool { impl ResourcePool { pub fn new() -> Self { Self { - inner: Mutex::new(HashMap::default()), + inner: Mutex::new(rank::RESOURCE_POOL_INNER, HashMap::default()), } } - /// Get a resource from the pool with the given entry map, or create a new one if it doesn't exist using the given constructor. + /// Get a resource from the pool with the given entry map, or create a new + /// one if it doesn't exist using the given constructor. /// - /// Behaves such that only one resource will be created for each unique entry map at any one time. + /// Behaves such that only one resource will be created for each unique + /// entry map at any one time. pub fn get_or_init(&self, key: K, constructor: F) -> Result, E> where F: FnOnce(K) -> Result, E>, @@ -96,6 +98,8 @@ impl ResourcePool { /// Remove the given entry map from the pool. /// /// Must *only* be called in the Drop impl of [`BindGroupLayout`]. + /// + /// [`BindGroupLayout`]: crate::binding_model::BindGroupLayout pub fn remove(&self, key: &K) { let hashed_key = PreHashedKey::from_key(key); diff --git a/third_party/rust/wgpu-core/src/present.rs b/third_party/rust/wgpu-core/src/present.rs index 2f274cd5542a..85ac830f3699 100644 --- a/third_party/rust/wgpu-core/src/present.rs +++ b/third_party/rust/wgpu-core/src/present.rs @@ -21,13 +21,14 @@ use crate::{ hal_api::HalApi, hal_label, id, init_tracker::TextureInitTracker, + lock::{rank, Mutex}, resource::{self, ResourceInfo}, snatch::Snatchable, track, }; use hal::{Queue as _, Surface as _}; -use parking_lot::{Mutex, RwLock}; +use parking_lot::RwLock; use thiserror::Error; use wgt::SurfaceStatus as Status; @@ -157,7 +158,7 @@ impl Global { #[cfg(not(feature = "trace"))] let _ = device; - let suf = A::get_surface(surface.as_ref()); + let suf = A::surface_as_hal(surface.as_ref()); let (texture_id, status) = match unsafe { suf.unwrap() .acquire_texture(Some(std::time::Duration::from_millis( @@ -227,8 +228,8 @@ impl Global { clear_mode: RwLock::new(resource::TextureClearMode::Surface { clear_view: Some(clear_view), }), - views: Mutex::new(Vec::new()), - bind_groups: Mutex::new(Vec::new()), + views: Mutex::new(rank::TEXTURE_VIEWS, Vec::new()), + bind_groups: Mutex::new(rank::TEXTURE_BIND_GROUPS, Vec::new()), }; let (id, resource) = fid.assign(Arc::new(texture)); @@ -324,7 +325,7 @@ impl Global { .textures .remove(texture.info.tracker_index()); let mut exclusive_snatch_guard = device.snatchable_lock.write(); - let suf = A::get_surface(&surface); + let suf = A::surface_as_hal(&surface); let mut inner = texture.inner_mut(&mut exclusive_snatch_guard); let inner = inner.as_mut().unwrap(); @@ -418,7 +419,7 @@ impl Global { .lock() .textures .remove(texture.info.tracker_index()); - let suf = A::get_surface(&surface); + let suf = A::surface_as_hal(&surface); let exclusive_snatch_guard = device.snatchable_lock.write(); match texture.inner.snatch(exclusive_snatch_guard).unwrap() { resource::TextureInner::Surface { mut raw, parent_id } => { diff --git a/third_party/rust/wgpu-core/src/registry.rs b/third_party/rust/wgpu-core/src/registry.rs index f78abcaa6a80..e898ccdce4cd 100644 --- a/third_party/rust/wgpu-core/src/registry.rs +++ b/third_party/rust/wgpu-core/src/registry.rs @@ -38,6 +38,7 @@ impl RegistryReport { /// #[derive(Debug)] pub(crate) struct Registry { + // Must only contain an id which has either never been used or has been released from `storage` identity: Arc>, storage: RwLock>, backend: Backend, @@ -98,9 +99,6 @@ impl FutureId<'_, T> { /// Assign an existing resource to a new ID. /// /// Registers it with the registry. - /// - /// This _will_ leak the ID, and it will not be recycled again. - /// See https://github.com/gfx-rs/wgpu/issues/4912. pub fn assign_existing(self, value: &Arc) -> Id { let mut data = self.data.write(); debug_assert!(!data.contains(self.id)); @@ -165,8 +163,11 @@ impl Registry { storage.insert_error(id, label); } pub(crate) fn unregister(&self, id: Id) -> Option> { - self.identity.free(id); let value = self.storage.write().remove(id); + // This needs to happen *after* removing it from the storage, to maintain the + // invariant that `self.identity` only contains ids which are actually available + // See https://github.com/gfx-rs/wgpu/issues/5372 + self.identity.free(id); //Returning None is legal if it's an error ID value } @@ -209,3 +210,53 @@ impl Registry { report } } + +#[cfg(test)] +mod tests { + use std::sync::Arc; + + use crate::{ + id::Marker, + resource::{Resource, ResourceInfo, ResourceType}, + }; + + use super::Registry; + struct TestData { + info: ResourceInfo, + } + struct TestDataId; + impl Marker for TestDataId {} + + impl Resource for TestData { + type Marker = TestDataId; + + const TYPE: ResourceType = "Test data"; + + fn as_info(&self) -> &ResourceInfo { + &self.info + } + + fn as_info_mut(&mut self) -> &mut ResourceInfo { + &mut self.info + } + } + + #[test] + fn simultaneous_registration() { + let registry = Registry::without_backend(); + std::thread::scope(|s| { + for _ in 0..5 { + s.spawn(|| { + for _ in 0..1000 { + let value = Arc::new(TestData { + info: ResourceInfo::new("Test data", None), + }); + let new_id = registry.prepare(None); + let (id, _) = new_id.assign(value); + registry.unregister(id); + } + }); + } + }) + } +} diff --git a/third_party/rust/wgpu-core/src/resource.rs b/third_party/rust/wgpu-core/src/resource.rs index 0c5f71232683..f75702e4905a 100644 --- a/third_party/rust/wgpu-core/src/resource.rs +++ b/third_party/rust/wgpu-core/src/resource.rs @@ -13,6 +13,7 @@ use crate::{ TextureViewId, }, init_tracker::{BufferInitTracker, TextureInitTracker}, + lock::Mutex, resource, resource_log, snatch::{ExclusiveSnatchGuard, SnatchGuard, Snatchable}, track::{SharedTrackerIndexAllocator, TextureSelector, TrackerIndex}, @@ -21,7 +22,7 @@ use crate::{ }; use hal::CommandEncoder; -use parking_lot::{Mutex, RwLock}; +use parking_lot::RwLock; use smallvec::SmallVec; use thiserror::Error; use wgt::WasmNotSendSync; @@ -1023,7 +1024,9 @@ impl Global { profiling::scope!("Surface::as_hal"); let surface = self.surfaces.get(id).ok(); - let hal_surface = surface.as_ref().and_then(|surface| A::get_surface(surface)); + let hal_surface = surface + .as_ref() + .and_then(|surface| A::surface_as_hal(surface)); hal_surface_callback(hal_surface) } diff --git a/third_party/rust/wgpu-core/src/snatch.rs b/third_party/rust/wgpu-core/src/snatch.rs index d5cd1a3d37ec..80221aeaacec 100644 --- a/third_party/rust/wgpu-core/src/snatch.rs +++ b/third_party/rust/wgpu-core/src/snatch.rs @@ -64,8 +64,58 @@ impl std::fmt::Debug for Snatchable { unsafe impl Sync for Snatchable {} +struct LockTrace { + purpose: &'static str, + caller: &'static Location<'static>, + backtrace: Backtrace, +} + +impl std::fmt::Display for LockTrace { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + write!( + f, + "a {} lock at {}\n{}", + self.purpose, self.caller, self.backtrace + ) + } +} + +#[cfg(debug_assertions)] +impl LockTrace { + #[track_caller] + fn enter(purpose: &'static str) { + let new = LockTrace { + purpose, + caller: Location::caller(), + backtrace: Backtrace::capture(), + }; + + if let Some(prev) = SNATCH_LOCK_TRACE.take() { + let current = thread::current(); + let name = current.name().unwrap_or(""); + panic!( + "thread '{name}' attempted to acquire a snatch lock recursively.\n\ + - Currently trying to acquire {new}\n\ + - Previously acquired {prev}", + ); + } else { + SNATCH_LOCK_TRACE.set(Some(new)); + } + } + + fn exit() { + SNATCH_LOCK_TRACE.take(); + } +} + +#[cfg(not(debug_assertions))] +impl LockTrace { + fn enter(purpose: &'static str) {} + fn exit() {} +} + thread_local! { - static READ_LOCK_LOCATION: Cell, Backtrace)>> = const { Cell::new(None) }; + static SNATCH_LOCK_TRACE: Cell> = const { Cell::new(None) }; } /// A Device-global lock for all snatchable data. @@ -87,22 +137,7 @@ impl SnatchLock { /// Request read access to snatchable resources. #[track_caller] pub fn read(&self) -> SnatchGuard { - if cfg!(debug_assertions) { - let caller = Location::caller(); - let backtrace = Backtrace::capture(); - if let Some((prev, bt)) = READ_LOCK_LOCATION.take() { - let current = thread::current(); - let name = current.name().unwrap_or(""); - panic!( - "thread '{name}' attempted to acquire a snatch read lock recursively.\n - - {prev}\n{bt}\n - - {caller}\n{backtrace}" - ); - } else { - READ_LOCK_LOCATION.set(Some((caller, backtrace))); - } - } - + LockTrace::enter("read"); SnatchGuard(self.lock.read()) } @@ -111,14 +146,21 @@ impl SnatchLock { /// This should only be called when a resource needs to be snatched. This has /// a high risk of causing lock contention if called concurrently with other /// wgpu work. + #[track_caller] pub fn write(&self) -> ExclusiveSnatchGuard { + LockTrace::enter("write"); ExclusiveSnatchGuard(self.lock.write()) } } impl Drop for SnatchGuard<'_> { fn drop(&mut self) { - #[cfg(debug_assertions)] - READ_LOCK_LOCATION.take(); + LockTrace::exit(); + } +} + +impl Drop for ExclusiveSnatchGuard<'_> { + fn drop(&mut self) { + LockTrace::exit(); } } diff --git a/third_party/rust/wgpu-core/src/track/buffer.rs b/third_party/rust/wgpu-core/src/track/buffer.rs index 6cf1fdda6f20..9a52a532533d 100644 --- a/third_party/rust/wgpu-core/src/track/buffer.rs +++ b/third_party/rust/wgpu-core/src/track/buffer.rs @@ -11,6 +11,7 @@ use super::{PendingTransition, ResourceTracker, TrackerIndex}; use crate::{ hal_api::HalApi, id::BufferId, + lock::{rank, Mutex}, resource::{Buffer, Resource}, snatch::SnatchGuard, storage::Storage, @@ -20,7 +21,6 @@ use crate::{ }, }; use hal::{BufferBarrier, BufferUses}; -use parking_lot::Mutex; use wgt::{strict_assert, strict_assert_eq}; impl ResourceUses for BufferUses { @@ -51,7 +51,7 @@ pub(crate) struct BufferBindGroupState { impl BufferBindGroupState { pub fn new() -> Self { Self { - buffers: Mutex::new(Vec::new()), + buffers: Mutex::new(rank::BUFFER_BIND_GROUP_STATE_BUFFERS, Vec::new()), _phantom: PhantomData, } @@ -245,6 +245,22 @@ impl BufferUsageScope { .get(id) .map_err(|_| UsageConflict::BufferInvalid { id })?; + self.insert_merge_single(buffer.clone(), new_state) + .map(|_| buffer) + } + + /// Merge a single state into the UsageScope, using an already resolved buffer. + /// + /// If the resulting state is invalid, returns a usage + /// conflict with the details of the invalid state. + /// + /// If the ID is higher than the length of internal vectors, + /// the vectors will be extended. A call to set_size is not needed. + pub fn insert_merge_single( + &mut self, + buffer: Arc>, + new_state: BufferUses, + ) -> Result<(), UsageConflict> { let index = buffer.info.tracker_index().as_usize(); self.allow_index(index); @@ -260,12 +276,12 @@ impl BufferUsageScope { index, BufferStateProvider::Direct { state: new_state }, ResourceMetadataProvider::Direct { - resource: Cow::Owned(buffer.clone()), + resource: Cow::Owned(buffer), }, )?; } - Ok(buffer) + Ok(()) } } diff --git a/third_party/rust/wgpu-core/src/track/metadata.rs b/third_party/rust/wgpu-core/src/track/metadata.rs index 3e71e0e084cb..d6e8d6f90617 100644 --- a/third_party/rust/wgpu-core/src/track/metadata.rs +++ b/third_party/rust/wgpu-core/src/track/metadata.rs @@ -87,16 +87,18 @@ impl ResourceMetadata { /// Add the resource with the given index, epoch, and reference count to the /// set. /// + /// Returns a reference to the newly inserted resource. + /// (This allows avoiding a clone/reference count increase in many cases.) + /// /// # Safety /// /// The given `index` must be in bounds for this `ResourceMetadata`'s /// existing tables. See `tracker_assert_in_bounds`. #[inline(always)] - pub(super) unsafe fn insert(&mut self, index: usize, resource: Arc) { + pub(super) unsafe fn insert(&mut self, index: usize, resource: Arc) -> &Arc { self.owned.set(index, true); - unsafe { - *self.resources.get_unchecked_mut(index) = Some(resource); - } + let resource_dst = unsafe { self.resources.get_unchecked_mut(index) }; + resource_dst.insert(resource) } /// Get the resource with the given index. diff --git a/third_party/rust/wgpu-core/src/track/mod.rs b/third_party/rust/wgpu-core/src/track/mod.rs index 374dfe74938f..a954a46cbf7e 100644 --- a/third_party/rust/wgpu-core/src/track/mod.rs +++ b/third_party/rust/wgpu-core/src/track/mod.rs @@ -102,10 +102,15 @@ mod stateless; mod texture; use crate::{ - binding_model, command, conv, hal_api::HalApi, id, pipeline, resource, snatch::SnatchGuard, + binding_model, command, conv, + hal_api::HalApi, + id, + lock::{rank, Mutex}, + pipeline, resource, + snatch::SnatchGuard, }; -use parking_lot::{Mutex, RwLock}; +use parking_lot::RwLock; use std::{fmt, ops, sync::Arc}; use thiserror::Error; @@ -136,7 +141,8 @@ impl TrackerIndex { /// of a certain type. This index is separate from the resource ID for various reasons: /// - There can be multiple resource IDs pointing the the same resource. /// - IDs of dead handles can be recycled while resources are internally held alive (and tracked). -/// - The plan is to remove IDs in the long run (https://github.com/gfx-rs/wgpu/issues/5121). +/// - The plan is to remove IDs in the long run +/// ([#5121](https://github.com/gfx-rs/wgpu/issues/5121)). /// In order to produce these tracker indices, there is a shared TrackerIndexAllocator /// per resource type. Indices have the same lifetime as the internal resource they /// are associated to (alloc happens when creating the resource and free is called when @@ -190,7 +196,10 @@ pub(crate) struct SharedTrackerIndexAllocator { impl SharedTrackerIndexAllocator { pub fn new() -> Self { SharedTrackerIndexAllocator { - inner: Mutex::new(TrackerIndexAllocator::new()), + inner: Mutex::new( + rank::SHARED_TRACKER_INDEX_ALLOCATOR_INNER, + TrackerIndexAllocator::new(), + ), } } @@ -639,8 +648,8 @@ impl Tracker { /// /// If a transition is needed to get the resources into the needed /// state, those transitions are stored within the tracker. A - /// subsequent call to [`BufferTracker::drain`] or - /// [`TextureTracker::drain`] is needed to get those transitions. + /// subsequent call to [`BufferTracker::drain_transitions`] or + /// [`TextureTracker::drain_transitions`] is needed to get those transitions. /// /// This is a really funky method used by Compute Passes to generate /// barriers after a call to dispatch without needing to iterate diff --git a/third_party/rust/wgpu-core/src/track/stateless.rs b/third_party/rust/wgpu-core/src/track/stateless.rs index 00225f2305ea..25ffc027eefd 100644 --- a/third_party/rust/wgpu-core/src/track/stateless.rs +++ b/third_party/rust/wgpu-core/src/track/stateless.rs @@ -6,9 +6,14 @@ use std::sync::Arc; -use parking_lot::Mutex; - -use crate::{id::Id, resource::Resource, resource_log, storage::Storage, track::ResourceMetadata}; +use crate::{ + id::Id, + lock::{rank, Mutex}, + resource::Resource, + resource_log, + storage::Storage, + track::ResourceMetadata, +}; use super::{ResourceTracker, TrackerIndex}; @@ -24,7 +29,7 @@ pub(crate) struct StatelessBindGroupSate { impl StatelessBindGroupSate { pub fn new() -> Self { Self { - resources: Mutex::new(Vec::new()), + resources: Mutex::new(rank::STATELESS_BIND_GROUP_STATE_RESOURCES, Vec::new()), } } @@ -153,16 +158,17 @@ impl StatelessTracker { /// /// If the ID is higher than the length of internal vectors, /// the vectors will be extended. A call to set_size is not needed. - pub fn insert_single(&mut self, resource: Arc) { + /// + /// Returns a reference to the newly inserted resource. + /// (This allows avoiding a clone/reference count increase in many cases.) + pub fn insert_single(&mut self, resource: Arc) -> &Arc { let index = resource.as_info().tracker_index().as_usize(); self.allow_index(index); self.tracker_assert_in_bounds(index); - unsafe { - self.metadata.insert(index, resource); - } + unsafe { self.metadata.insert(index, resource) } } /// Adds the given resource to the tracker. diff --git a/third_party/rust/wgpu-core/src/track/texture.rs b/third_party/rust/wgpu-core/src/track/texture.rs index 3cf95ff38a3c..51ed72a18dfe 100644 --- a/third_party/rust/wgpu-core/src/track/texture.rs +++ b/third_party/rust/wgpu-core/src/track/texture.rs @@ -24,6 +24,7 @@ use super::{ }; use crate::{ hal_api::HalApi, + lock::{rank, Mutex}, resource::{Resource, Texture, TextureInner}, snatch::SnatchGuard, track::{ @@ -36,7 +37,6 @@ use hal::TextureUses; use arrayvec::ArrayVec; use naga::FastHashMap; -use parking_lot::Mutex; use wgt::{strict_assert, strict_assert_eq}; use std::{borrow::Cow, iter, marker::PhantomData, ops::Range, sync::Arc, vec::Drain}; @@ -164,7 +164,7 @@ pub(crate) struct TextureBindGroupState { impl TextureBindGroupState { pub fn new() -> Self { Self { - textures: Mutex::new(Vec::new()), + textures: Mutex::new(rank::TEXTURE_BIND_GROUP_STATE_TEXTURES, Vec::new()), } } diff --git a/third_party/rust/wgpu-hal/.cargo-checksum.json b/third_party/rust/wgpu-hal/.cargo-checksum.json index abf46eb9d5ca..adcd1a3c5b0b 100644 --- a/third_party/rust/wgpu-hal/.cargo-checksum.json +++ b/third_party/rust/wgpu-hal/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"28056a1adb14ed2e3eb0268521db5cfaa2f4ffd274a660bea6f947a1407d16ea","LICENSE.APACHE":"a6cba85bc92e0cff7a450b1d873c0eaa2e9fc96bf472df0247a26bec77bf3ff9","LICENSE.MIT":"c7fea58d1cfe49634cd92e54fc10a9d871f4b275321a4cd8c09e449122caaeb4","README.md":"b432248c4d5c85925ea2d741dc53069111619631a009994dbeaef980993d23a2","build.rs":"c80bdc0152a00471eec6ed0dd0f7d55d0b975498a00ba05e94100c84ad639a49","examples/halmark/main.rs":"e47bbef3364d3315d2e695b7595f46aa6fe5246a8353a0765da65c4fc912df04","examples/halmark/shader.wgsl":"26c256ec36d6f0e9a1647431ca772766bee4382d64eaa718ba7b488dcfb6bcca","examples/raw-gles.em.html":"70fbe68394a1a4522192de1dcfaf7d399f60d7bdf5de70b708f9bb0417427546","examples/raw-gles.rs":"095113a1ba0851652a77aabfc8fa6ea7edcc2d09e91fd1e5009ead87d5998ea9","examples/ray-traced-triangle/main.rs":"16a8280f76f98ee9525df73d913aa57b1459eb6dac910024036521841978d4c7","examples/ray-traced-triangle/shader.wgsl":"cc10caf92746724a71f6dd0dbc3a71e57b37c7d1d83278556805a535c0728a9d","src/auxil/dxgi/conv.rs":"134a1459339537a462448d5e1eb117931f450c6724bd9cb8388f39870c466eb3","src/auxil/dxgi/exception.rs":"f0cfb5a0adcdc3b6db909601fee51ad51368f5da269bcd46e4dbea45a3bec4b1","src/auxil/dxgi/factory.rs":"5f861fbfe2f4cce08722a95283549b8f62b96f24a306d080d9f1730ae53501d8","src/auxil/dxgi/mod.rs":"a202564d9ac97530b16a234b87d180cd345aae705e082a9b1177dcde813645f9","src/auxil/dxgi/result.rs":"79fe5aa17a2b21a7f06b1b604200c3c3e73fca31e8193aab80b5b15e7e9818a0","src/auxil/dxgi/time.rs":"b6f966b250e9424d5d7e4065f2108cba87197c1e30baae6d87083055d1bc5a4b","src/auxil/mod.rs":"720ef2aae258733322a3274fd858f91effb8951dabaf7bbfd8a9a0be2d2dba97","src/auxil/renderdoc.rs":"c2f849f70f576b0c9b0d32dd155b6a6353f74dff59cbeeaa994a12789d047c0f","src/dx12/adapter.rs":"32cf99aa6dd64061d12c70aa8b0caf9eabf12c17f9c53522d859324ca70a6eb7","src/dx12/command.rs":"e0675560784214a18e078062cbd0965c21a35c99eecf0e697d1badb9c692db35","src/dx12/conv.rs":"94d35f117ae003b07049f3a0bc6c45a0ffda9fb8053233d39c173cfb1b644403","src/dx12/descriptor.rs":"e06eb08bee4c805fa76b6ab791893b5b563ee60de9c8f8d8e0e21ab97ade5664","src/dx12/device.rs":"b6c9bd49c56c136f6bec080d92183725d3630ba10d80c5441d3a4749b939539c","src/dx12/instance.rs":"030a86ac810d5ebf151328bbc06b9b5a89788721aa963cb4e0f3ff943b2c8633","src/dx12/mod.rs":"6b517e861f0e7a8ce1bc0a1a3e141ed56d3414ce298b8280ac6d398314a4bd61","src/dx12/shader_compilation.rs":"5087adb8576e2d7751619dfdf8b37c573bb4e494290c594077ca3208cce1e746","src/dx12/suballocation.rs":"6939fc36223a15cc070c744d0418f9ac6fa2829d794af17cdea7c61eb5f8d2c0","src/dx12/types.rs":"b5140522eea491b6943ee9da235cdbfbd611f830d2719fd8812dfdd494ed16e2","src/dx12/view.rs":"792772e9c87840dcd045b7381a03162eb4a501492a95ca586e77e81aed621c67","src/empty.rs":"0849e0b7210d33145b3fb1368ed08b13fbc2144b1ccc0a1af913896e916bbe46","src/gles/adapter.rs":"22fe404177d4abb077f35a5be54295f81eacb021d448ad01aa96450ade8b089a","src/gles/command.rs":"788505168ae1af312781c86d31d5bc289fcc4e2b3cb047fb41deb62542db1a95","src/gles/conv.rs":"2e99a39fbef7a5bb8f2a24779bf5387601ba336de4cac9ff2bdac5b93f48a1d7","src/gles/device.rs":"df2d70065949abd95a4bccbdfd3e0400e600d1b554070d264a1aaf206d5a9264","src/gles/egl.rs":"72feefbcd399e686b5c210a67151ef040e45e123ad371539274d1d52b3dd162d","src/gles/emscripten.rs":"19bb73a9d140645f3f32cd48b002151711a9b8456e213eab5f3a2be79239e147","src/gles/mod.rs":"b8999f76ad45e07312b291457100f12699ba6a2635c1f1913b0648e9a9394015","src/gles/queue.rs":"7f62e9c1cb670f66ac8bb0d62cd531b9c11b2a29f8ed28736c40e21071fbe25d","src/gles/shaders/clear.frag":"9133ed8ed97d3641fbb6b5f5ea894a3554c629ccc1b80a5fc9221d7293aa1954","src/gles/shaders/clear.vert":"a543768725f4121ff2e9e1fb5b00644931e9d6f2f946c0ef01968afb5a135abd","src/gles/shaders/srgb_present.frag":"dd9a43c339a2fa4ccf7f6a1854c6f400cabf271a7d5e9230768e9f39d47f3ff5","src/gles/shaders/srgb_present.vert":"6e85d489403d80b81cc94790730bb53b309dfc5eeede8f1ea3412a660f31d357","src/gles/web.rs":"000ed39eae4a6442ca16bdca68e1e61459e6815a5db8eeec53e0ee0f5f14ae66","src/gles/wgl.rs":"78bfe5bcdacfde8d8df0d6f3987048f8ad8a2c2c93df6d607cf5a16795d3bb8e","src/lib.rs":"9539b96915dd8b7605f1b7c9b5b8473d42240e5a2e28e48453110ab8cb507185","src/metal/adapter.rs":"9310e3f0f1d03092b9bcec7ffe29e861b7a330897be44d967dd4674acdae5855","src/metal/command.rs":"61640f2cb7269f44487df2d911771fbe1f78484d44a5363a6ddfce7d77143b02","src/metal/conv.rs":"a34a44e6affb594f3285f8d585b0fb33132aa7dc6a612f7c1aecaa400fe43265","src/metal/device.rs":"8662d270ad60a7170f983f8260bfc5838a3362ef4c9596295d9602b24152433f","src/metal/mod.rs":"3e3f69ac864cb6a96c5b9df551a934bbc4bf08503430b9507561eef973daf57f","src/metal/surface.rs":"397dab6726eead96f0be9ecb6686874e691079da94c072921a6422e9b1284fb5","src/metal/time.rs":"c32d69f30e846dfcc0e39e01097fb80df63b2bebb6586143bb62494999850246","src/vulkan/adapter.rs":"ac4525114d37d6ffa31f2c240b2bb9e1d97d19cd6d400598c2a1153d9144bd0f","src/vulkan/command.rs":"82060e8040eea27b717ec676525139a9c7238074ad5ce6902f5174ac5c7aa048","src/vulkan/conv.rs":"47b8d7822703a5bd2b8c80118ee6ac1cd0b985758e2f929317fe4c42ce9a9bd9","src/vulkan/device.rs":"902ffa2a6ca1b40ed4b3fa234794338168412374ed97c4c13d007fd85a3ca795","src/vulkan/instance.rs":"60742c3c1feee63eca0953165dae57c86b0d58e496ad374743ff83ae50a4e8f1","src/vulkan/mod.rs":"2922204924c6eb00ae714403273d9de67489991d50feeb9f01563c6de44d6b88"},"package":null} \ No newline at end of file +{"files":{"Cargo.toml":"1acf19718294beadd325a4d85731aa2f8e17d4d305986cfd433f87f74cdb8067","LICENSE.APACHE":"a6cba85bc92e0cff7a450b1d873c0eaa2e9fc96bf472df0247a26bec77bf3ff9","LICENSE.MIT":"c7fea58d1cfe49634cd92e54fc10a9d871f4b275321a4cd8c09e449122caaeb4","README.md":"b432248c4d5c85925ea2d741dc53069111619631a009994dbeaef980993d23a2","build.rs":"c80bdc0152a00471eec6ed0dd0f7d55d0b975498a00ba05e94100c84ad639a49","examples/halmark/main.rs":"edb10aaffdf57705f079b8d1d988427ba92879f54b8c639d52eb292fc5f80d42","examples/halmark/shader.wgsl":"26c256ec36d6f0e9a1647431ca772766bee4382d64eaa718ba7b488dcfb6bcca","examples/raw-gles.em.html":"70fbe68394a1a4522192de1dcfaf7d399f60d7bdf5de70b708f9bb0417427546","examples/raw-gles.rs":"095113a1ba0851652a77aabfc8fa6ea7edcc2d09e91fd1e5009ead87d5998ea9","examples/ray-traced-triangle/main.rs":"5679fb4794966d9132b8d15471526f6adce58378bd319ae3f345494d2a216ddc","examples/ray-traced-triangle/shader.wgsl":"cc10caf92746724a71f6dd0dbc3a71e57b37c7d1d83278556805a535c0728a9d","src/auxil/dxgi/conv.rs":"134a1459339537a462448d5e1eb117931f450c6724bd9cb8388f39870c466eb3","src/auxil/dxgi/exception.rs":"f0cfb5a0adcdc3b6db909601fee51ad51368f5da269bcd46e4dbea45a3bec4b1","src/auxil/dxgi/factory.rs":"5f861fbfe2f4cce08722a95283549b8f62b96f24a306d080d9f1730ae53501d8","src/auxil/dxgi/mod.rs":"a202564d9ac97530b16a234b87d180cd345aae705e082a9b1177dcde813645f9","src/auxil/dxgi/result.rs":"79fe5aa17a2b21a7f06b1b604200c3c3e73fca31e8193aab80b5b15e7e9818a0","src/auxil/dxgi/time.rs":"b6f966b250e9424d5d7e4065f2108cba87197c1e30baae6d87083055d1bc5a4b","src/auxil/mod.rs":"720ef2aae258733322a3274fd858f91effb8951dabaf7bbfd8a9a0be2d2dba97","src/auxil/renderdoc.rs":"c2f849f70f576b0c9b0d32dd155b6a6353f74dff59cbeeaa994a12789d047c0f","src/dx12/adapter.rs":"757fe846d1114bcd2343b8de405869377e1b3930e7e70a4908f07dc5284e0fca","src/dx12/command.rs":"e0675560784214a18e078062cbd0965c21a35c99eecf0e697d1badb9c692db35","src/dx12/conv.rs":"94d35f117ae003b07049f3a0bc6c45a0ffda9fb8053233d39c173cfb1b644403","src/dx12/descriptor.rs":"e06eb08bee4c805fa76b6ab791893b5b563ee60de9c8f8d8e0e21ab97ade5664","src/dx12/device.rs":"30e1d9ad16a077fdcb8091eed7fe90ba8c51edb905b2908dcdb3c85113cb88a3","src/dx12/instance.rs":"030a86ac810d5ebf151328bbc06b9b5a89788721aa963cb4e0f3ff943b2c8633","src/dx12/mod.rs":"6b517e861f0e7a8ce1bc0a1a3e141ed56d3414ce298b8280ac6d398314a4bd61","src/dx12/shader_compilation.rs":"5087adb8576e2d7751619dfdf8b37c573bb4e494290c594077ca3208cce1e746","src/dx12/suballocation.rs":"6939fc36223a15cc070c744d0418f9ac6fa2829d794af17cdea7c61eb5f8d2c0","src/dx12/types.rs":"b5140522eea491b6943ee9da235cdbfbd611f830d2719fd8812dfdd494ed16e2","src/dx12/view.rs":"792772e9c87840dcd045b7381a03162eb4a501492a95ca586e77e81aed621c67","src/empty.rs":"0849e0b7210d33145b3fb1368ed08b13fbc2144b1ccc0a1af913896e916bbe46","src/gles/adapter.rs":"90f0402e2b62b9311d247f3eba2ff956ef38e3799ca08355721730fb9a25e6d3","src/gles/command.rs":"788505168ae1af312781c86d31d5bc289fcc4e2b3cb047fb41deb62542db1a95","src/gles/conv.rs":"2e99a39fbef7a5bb8f2a24779bf5387601ba336de4cac9ff2bdac5b93f48a1d7","src/gles/device.rs":"64a8f202f123a4f2238e295023803724cd3095f2932462cc087a2d2212f0df3d","src/gles/egl.rs":"b85dc96eaf117e0ae1425cb495ab22718556c3a65343ee151118cb8431ed70c4","src/gles/emscripten.rs":"19bb73a9d140645f3f32cd48b002151711a9b8456e213eab5f3a2be79239e147","src/gles/mod.rs":"a54401494e4279bd56867fc621bfe3a8252fe82409cdc1594e7b22ee09f68fc0","src/gles/queue.rs":"1d4ea44a8e2ce47f9266260f1f384f02f870473c0411b77c5bab6794ee8484f5","src/gles/shaders/clear.frag":"9133ed8ed97d3641fbb6b5f5ea894a3554c629ccc1b80a5fc9221d7293aa1954","src/gles/shaders/clear.vert":"a543768725f4121ff2e9e1fb5b00644931e9d6f2f946c0ef01968afb5a135abd","src/gles/shaders/srgb_present.frag":"dd9a43c339a2fa4ccf7f6a1854c6f400cabf271a7d5e9230768e9f39d47f3ff5","src/gles/shaders/srgb_present.vert":"6e85d489403d80b81cc94790730bb53b309dfc5eeede8f1ea3412a660f31d357","src/gles/web.rs":"000ed39eae4a6442ca16bdca68e1e61459e6815a5db8eeec53e0ee0f5f14ae66","src/gles/wgl.rs":"59cd28ba85c6c3cbcbd82fd0e4225303a5f98e6a41b839400f9cce3a1b267af8","src/lib.rs":"289ba0a624de33c6a0d411d3233d43c9f301b7eddff8b603dbf2b1c1fc2a2baf","src/metal/adapter.rs":"d58ef20e95c3e5e0cb65839827f3de5aeeecacb6b486fcb53279dce0c46413e9","src/metal/command.rs":"61640f2cb7269f44487df2d911771fbe1f78484d44a5363a6ddfce7d77143b02","src/metal/conv.rs":"a34a44e6affb594f3285f8d585b0fb33132aa7dc6a612f7c1aecaa400fe43265","src/metal/device.rs":"81ad3f5e4e5967cdb31a5e0f5e9404324b121408409b1422263bd9b0b793dd26","src/metal/mod.rs":"3a2a83e54418b3280f4b45121fc802d14651b382a0f5c584ecd60549393ec755","src/metal/surface.rs":"397dab6726eead96f0be9ecb6686874e691079da94c072921a6422e9b1284fb5","src/metal/time.rs":"c32d69f30e846dfcc0e39e01097fb80df63b2bebb6586143bb62494999850246","src/vulkan/adapter.rs":"1dac2df2da0cea061b4de00e3f231b7e03380a212d22d0ed683835353efb3dfe","src/vulkan/command.rs":"a79df7f455c4061ab404c319e6602e6c1a3567443b50c20ddba6150fbdcc8826","src/vulkan/conv.rs":"47b8d7822703a5bd2b8c80118ee6ac1cd0b985758e2f929317fe4c42ce9a9bd9","src/vulkan/device.rs":"fefa6ebebb2d578323f01420fecd85f36e584efdc8a88a0c89ffc66c9d5524f9","src/vulkan/instance.rs":"60742c3c1feee63eca0953165dae57c86b0d58e496ad374743ff83ae50a4e8f1","src/vulkan/mod.rs":"4f02edcaf104be1ea029b8c3592246530fea789b18c4c1c31560b7aeedf56d2e"},"package":null} \ No newline at end of file diff --git a/third_party/rust/wgpu-hal/Cargo.toml b/third_party/rust/wgpu-hal/Cargo.toml index f87160314a73..b8193787ffea 100644 --- a/third_party/rust/wgpu-hal/Cargo.toml +++ b/third_party/rust/wgpu-hal/Cargo.toml @@ -175,7 +175,7 @@ version = "0.6" optional = true [target."cfg(not(target_arch = \"wasm32\"))".dependencies.gpu-descriptor] -version = "0.2" +version = "0.3" optional = true [target."cfg(not(target_arch = \"wasm32\"))".dependencies.khronos-egl] diff --git a/third_party/rust/wgpu-hal/examples/halmark/main.rs b/third_party/rust/wgpu-hal/examples/halmark/main.rs index 29dfd49d2834..f376f10251d8 100644 --- a/third_party/rust/wgpu-hal/examples/halmark/main.rs +++ b/third_party/rust/wgpu-hal/examples/halmark/main.rs @@ -253,12 +253,14 @@ impl Example { module: &shader, entry_point: "vs_main", constants: &constants, + zero_initialize_workgroup_memory: true, }, vertex_buffers: &[], fragment_stage: Some(hal::ProgrammableStage { module: &shader, entry_point: "fs_main", constants: &constants, + zero_initialize_workgroup_memory: true, }), primitive: wgt::PrimitiveState { topology: wgt::PrimitiveTopology::TriangleStrip, diff --git a/third_party/rust/wgpu-hal/examples/ray-traced-triangle/main.rs b/third_party/rust/wgpu-hal/examples/ray-traced-triangle/main.rs index 2ed2d64627b2..3985cd60afe7 100644 --- a/third_party/rust/wgpu-hal/examples/ray-traced-triangle/main.rs +++ b/third_party/rust/wgpu-hal/examples/ray-traced-triangle/main.rs @@ -372,6 +372,7 @@ impl Example { module: &shader_module, entry_point: "main", constants: &Default::default(), + zero_initialize_workgroup_memory: true, }, }) } diff --git a/third_party/rust/wgpu-hal/src/dx12/adapter.rs b/third_party/rust/wgpu-hal/src/dx12/adapter.rs index 2b7040720e8e..faf25cc852c0 100644 --- a/third_party/rust/wgpu-hal/src/dx12/adapter.rs +++ b/third_party/rust/wgpu-hal/src/dx12/adapter.rs @@ -115,18 +115,6 @@ impl super::Adapter { ) }); - let mut shader_model_support: d3d12_ty::D3D12_FEATURE_DATA_SHADER_MODEL = - d3d12_ty::D3D12_FEATURE_DATA_SHADER_MODEL { - HighestShaderModel: d3d12_ty::D3D_SHADER_MODEL_6_0, - }; - assert_eq!(0, unsafe { - device.CheckFeatureSupport( - d3d12_ty::D3D12_FEATURE_SHADER_MODEL, - &mut shader_model_support as *mut _ as *mut _, - mem::size_of::() as _, - ) - }); - let mut workarounds = super::Workarounds::default(); let info = wgt::AdapterInfo { @@ -321,7 +309,7 @@ impl super::Adapter { wgt::Features::TEXTURE_BINDING_ARRAY | wgt::Features::UNIFORM_BUFFER_AND_STORAGE_TEXTURE_ARRAY_NON_UNIFORM_INDEXING | wgt::Features::SAMPLED_TEXTURE_AND_STORAGE_BUFFER_ARRAY_NON_UNIFORM_INDEXING, - shader_model_support.HighestShaderModel >= d3d12_ty::D3D_SHADER_MODEL_5_1, + shader_model >= naga::back::hlsl::ShaderModel::V5_1, ); let bgra8unorm_storage_supported = { @@ -343,21 +331,28 @@ impl super::Adapter { bgra8unorm_storage_supported, ); - // we must be using DXC because uint64_t was added with Shader Model 6 - // and FXC only supports up to 5.1 - let int64_shader_ops_supported = dxc_container.is_some() && { - let mut features1: d3d12_ty::D3D12_FEATURE_DATA_D3D12_OPTIONS1 = - unsafe { mem::zeroed() }; - let hr = unsafe { - device.CheckFeatureSupport( - d3d12_ty::D3D12_FEATURE_D3D12_OPTIONS1, - &mut features1 as *mut _ as *mut _, - mem::size_of::() as _, - ) - }; - hr == 0 && features1.Int64ShaderOps != 0 + let mut features1: d3d12_ty::D3D12_FEATURE_DATA_D3D12_OPTIONS1 = unsafe { mem::zeroed() }; + let hr = unsafe { + device.CheckFeatureSupport( + d3d12_ty::D3D12_FEATURE_D3D12_OPTIONS1, + &mut features1 as *mut _ as *mut _, + mem::size_of::() as _, + ) }; - features.set(wgt::Features::SHADER_INT64, int64_shader_ops_supported); + + features.set( + wgt::Features::SHADER_INT64, + shader_model >= naga::back::hlsl::ShaderModel::V6_0 + && hr == 0 + && features1.Int64ShaderOps != 0, + ); + + features.set( + wgt::Features::SUBGROUP, + shader_model >= naga::back::hlsl::ShaderModel::V6_0 + && hr == 0 + && features1.WaveOps != 0, + ); // float32-filterable should always be available on d3d12 features.set(wgt::Features::FLOAT32_FILTERABLE, true); @@ -425,6 +420,8 @@ impl super::Adapter { .min(crate::MAX_VERTEX_BUFFERS as u32), max_vertex_attributes: d3d12_ty::D3D12_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT, max_vertex_buffer_array_stride: d3d12_ty::D3D12_SO_BUFFER_MAX_STRIDE_IN_BYTES, + min_subgroup_size: 4, // Not using `features1.WaveLaneCountMin` as it is unreliable + max_subgroup_size: 128, // The push constants are part of the root signature which // has a limit of 64 DWORDS (256 bytes), but other resources // also share the root signature: diff --git a/third_party/rust/wgpu-hal/src/dx12/device.rs b/third_party/rust/wgpu-hal/src/dx12/device.rs index f4539817d383..82075294ee56 100644 --- a/third_party/rust/wgpu-hal/src/dx12/device.rs +++ b/third_party/rust/wgpu-hal/src/dx12/device.rs @@ -226,9 +226,20 @@ impl super::Device { ) .map_err(|e| crate::PipelineError::Linkage(stage_bit, format!("HLSL: {e:?}")))?; + let needs_temp_options = stage.zero_initialize_workgroup_memory + != layout.naga_options.zero_initialize_workgroup_memory; + let mut temp_options; + let naga_options = if needs_temp_options { + temp_options = layout.naga_options.clone(); + temp_options.zero_initialize_workgroup_memory = stage.zero_initialize_workgroup_memory; + &temp_options + } else { + &layout.naga_options + }; + //TODO: reuse the writer let mut source = String::new(); - let mut writer = hlsl::Writer::new(&mut source, &layout.naga_options); + let mut writer = hlsl::Writer::new(&mut source, naga_options); let reflection_info = { profiling::scope!("naga::back::hlsl::write"); writer @@ -239,7 +250,7 @@ impl super::Device { let full_stage = format!( "{}_{}\0", naga_stage.to_hlsl_str(), - layout.naga_options.shader_model.to_str() + naga_options.shader_model.to_str() ); let ep_index = module diff --git a/third_party/rust/wgpu-hal/src/gles/adapter.rs b/third_party/rust/wgpu-hal/src/gles/adapter.rs index b9d044337c0f..052c77006bda 100644 --- a/third_party/rust/wgpu-hal/src/gles/adapter.rs +++ b/third_party/rust/wgpu-hal/src/gles/adapter.rs @@ -104,7 +104,7 @@ impl super::Adapter { } } - fn make_info(vendor_orig: String, renderer_orig: String) -> wgt::AdapterInfo { + fn make_info(vendor_orig: String, renderer_orig: String, version: String) -> wgt::AdapterInfo { let vendor = vendor_orig.to_lowercase(); let renderer = renderer_orig.to_lowercase(); @@ -179,13 +179,33 @@ impl super::Adapter { 0 }; + let driver; + let driver_info; + if version.starts_with("WebGL ") || version.starts_with("OpenGL ") { + let es_sig = " ES"; + match version.find(es_sig) { + Some(pos) => { + driver = version[..pos + es_sig.len()].to_owned(); + driver_info = version[pos + es_sig.len() + 1..].to_owned(); + } + None => { + let pos = version.find(' ').unwrap(); + driver = version[..pos].to_owned(); + driver_info = version[pos + 1..].to_owned(); + } + } + } else { + driver = "OpenGL".to_owned(); + driver_info = version; + } + wgt::AdapterInfo { name: renderer_orig, vendor: vendor_id, device: 0, device_type: inferred_device_type, - driver: String::new(), - driver_info: String::new(), + driver, + driver_info, backend: wgt::Backend::Gl, } } @@ -507,8 +527,7 @@ impl super::Adapter { let has_etc = if cfg!(any(webgl, Emscripten)) { extensions.contains("WEBGL_compressed_texture_etc") } else { - // This is a required part of GLES3, but not part of Desktop GL at all. - es_ver.is_some() + es_ver.is_some() || extensions.contains("GL_ARB_ES3_compatibility") }; features.set(wgt::Features::TEXTURE_COMPRESSION_ETC2, has_etc); @@ -728,6 +747,8 @@ impl super::Adapter { } else { !0 }, + min_subgroup_size: 0, + max_subgroup_size: 0, max_push_constant_size: super::MAX_PUSH_CONSTANTS as u32 * 4, min_uniform_buffer_offset_alignment, min_storage_buffer_offset_alignment, @@ -825,7 +846,7 @@ impl super::Adapter { max_msaa_samples: max_samples, }), }, - info: Self::make_info(vendor, renderer), + info: Self::make_info(vendor, renderer, version), features, capabilities: crate::Capabilities { limits, diff --git a/third_party/rust/wgpu-hal/src/gles/device.rs b/third_party/rust/wgpu-hal/src/gles/device.rs index 921941735c5a..a1e2736aa67e 100644 --- a/third_party/rust/wgpu-hal/src/gles/device.rs +++ b/third_party/rust/wgpu-hal/src/gles/device.rs @@ -255,11 +255,23 @@ impl super::Device { }; let mut output = String::new(); + let needs_temp_options = stage.zero_initialize_workgroup_memory + != context.layout.naga_options.zero_initialize_workgroup_memory; + let mut temp_options; + let naga_options = if needs_temp_options { + // We use a conditional here, as cloning the naga_options could be expensive + // That is, we want to avoid doing that unless we cannot avoid it + temp_options = context.layout.naga_options.clone(); + temp_options.zero_initialize_workgroup_memory = stage.zero_initialize_workgroup_memory; + &temp_options + } else { + &context.layout.naga_options + }; let mut writer = glsl::Writer::new( &mut output, &module, &info, - &context.layout.naga_options, + naga_options, &pipeline_options, policies, ) @@ -305,6 +317,7 @@ impl super::Device { naga_stage: naga_stage.to_owned(), shader_id: stage.module.id, entry_point: stage.entry_point.to_owned(), + zero_initialize_workgroup_memory: stage.zero_initialize_workgroup_memory, }); } let mut guard = self diff --git a/third_party/rust/wgpu-hal/src/gles/egl.rs b/third_party/rust/wgpu-hal/src/gles/egl.rs index b166f4f102ce..7494dcad76fb 100644 --- a/third_party/rust/wgpu-hal/src/gles/egl.rs +++ b/third_party/rust/wgpu-hal/src/gles/egl.rs @@ -526,7 +526,24 @@ impl Inner { } let (config, supports_native_window) = choose_config(&egl, display, srgb_kind)?; - egl.bind_api(khronos_egl::OPENGL_ES_API).unwrap(); + + let supports_opengl = if version >= (1, 4) { + let client_apis = egl + .query_string(Some(display), khronos_egl::CLIENT_APIS) + .unwrap() + .to_string_lossy(); + client_apis + .split(' ') + .any(|client_api| client_api == "OpenGL") + } else { + false + }; + egl.bind_api(if supports_opengl { + khronos_egl::OPENGL_API + } else { + khronos_egl::OPENGL_ES_API + }) + .unwrap(); let needs_robustness = true; let mut khr_context_flags = 0; @@ -977,6 +994,7 @@ impl crate::Instance for Instance { srgb_kind: inner.srgb_kind, }) } + unsafe fn destroy_surface(&self, _surface: Surface) {} unsafe fn enumerate_adapters(&self) -> Vec> { @@ -993,6 +1011,12 @@ impl crate::Instance for Instance { }) }; + // In contrast to OpenGL ES, OpenGL requires explicitly enabling sRGB conversions, + // as otherwise the user has to do the sRGB conversion. + if !matches!(inner.srgb_kind, SrgbFrameBufferKind::None) { + unsafe { gl.enable(glow::FRAMEBUFFER_SRGB) }; + } + if self.flags.contains(wgt::InstanceFlags::DEBUG) && gl.supports_debug() { log::debug!("Max label length: {}", unsafe { gl.get_parameter_i32(glow::MAX_LABEL_LENGTH) diff --git a/third_party/rust/wgpu-hal/src/gles/mod.rs b/third_party/rust/wgpu-hal/src/gles/mod.rs index 6f41f7c000b3..0fcb09be46ff 100644 --- a/third_party/rust/wgpu-hal/src/gles/mod.rs +++ b/third_party/rust/wgpu-hal/src/gles/mod.rs @@ -602,6 +602,7 @@ struct ProgramStage { naga_stage: naga::ShaderStage, shader_id: ShaderId, entry_point: String, + zero_initialize_workgroup_memory: bool, } #[derive(PartialEq, Eq, Hash)] diff --git a/third_party/rust/wgpu-hal/src/gles/queue.rs b/third_party/rust/wgpu-hal/src/gles/queue.rs index 29dfb79d0489..7c728d397815 100644 --- a/third_party/rust/wgpu-hal/src/gles/queue.rs +++ b/third_party/rust/wgpu-hal/src/gles/queue.rs @@ -213,12 +213,27 @@ impl super::Queue { instance_count, ref first_instance_location, } => { - match base_vertex { - 0 => { - unsafe { - gl.uniform_1_u32(first_instance_location.as_ref(), first_instance) - }; + let supports_full_instancing = self + .shared + .private_caps + .contains(PrivateCapabilities::FULLY_FEATURED_INSTANCING); + if supports_full_instancing { + unsafe { + gl.draw_elements_instanced_base_vertex_base_instance( + topology, + index_count as i32, + index_type, + index_offset as i32, + instance_count as i32, + base_vertex, + first_instance, + ) + } + } else { + unsafe { gl.uniform_1_u32(first_instance_location.as_ref(), first_instance) }; + + if base_vertex == 0 { unsafe { // Don't use `gl.draw_elements`/`gl.draw_elements_base_vertex` for `instance_count == 1`. // Angle has a bug where it doesn't consider the instance divisor when `DYNAMIC_DRAW` is used in `gl.draw_elements`/`gl.draw_elements_base_vertex`. @@ -231,41 +246,17 @@ impl super::Queue { instance_count as i32, ) } - } - _ => { - let supports_full_instancing = self - .shared - .private_caps - .contains(PrivateCapabilities::FULLY_FEATURED_INSTANCING); - - if supports_full_instancing { - unsafe { - gl.draw_elements_instanced_base_vertex_base_instance( - topology, - index_count as i32, - index_type, - index_offset as i32, - instance_count as i32, - base_vertex, - first_instance, - ) - } - } else { - unsafe { - gl.uniform_1_u32(first_instance_location.as_ref(), first_instance) - }; - - // If we've gotten here, wgpu-core has already validated that this function exists via the DownlevelFlags::BASE_VERTEX feature. - unsafe { - gl.draw_elements_instanced_base_vertex( - topology, - index_count as _, - index_type, - index_offset as i32, - instance_count as i32, - base_vertex, - ) - } + } else { + // If we've gotten here, wgpu-core has already validated that this function exists via the DownlevelFlags::BASE_VERTEX feature. + unsafe { + gl.draw_elements_instanced_base_vertex( + topology, + index_count as _, + index_type, + index_offset as i32, + instance_count as i32, + base_vertex, + ) } } } diff --git a/third_party/rust/wgpu-hal/src/gles/wgl.rs b/third_party/rust/wgpu-hal/src/gles/wgl.rs index 2564892969b6..aae70478b481 100644 --- a/third_party/rust/wgpu-hal/src/gles/wgl.rs +++ b/third_party/rust/wgpu-hal/src/gles/wgl.rs @@ -507,6 +507,8 @@ impl crate::Instance for Instance { .supported_extensions() .contains("GL_ARB_framebuffer_sRGB"); + // In contrast to OpenGL ES, OpenGL requires explicitly enabling sRGB conversions, + // as otherwise the user has to do the sRGB conversion. if srgb_capable { unsafe { gl.enable(glow::FRAMEBUFFER_SRGB) }; } diff --git a/third_party/rust/wgpu-hal/src/lib.rs b/third_party/rust/wgpu-hal/src/lib.rs index 0b8e8d1e13f2..6f9e7b9aa357 100644 --- a/third_party/rust/wgpu-hal/src/lib.rs +++ b/third_party/rust/wgpu-hal/src/lib.rs @@ -3,14 +3,14 @@ * This crate defines a set of traits abstracting over modern graphics APIs, * with implementations ("backends") for Vulkan, Metal, Direct3D, and GL. * - * `wgpu_hal` is a spiritual successor to + * `wgpu-hal` is a spiritual successor to * [gfx-hal](https://github.com/gfx-rs/gfx), but with reduced scope, and * oriented towards WebGPU implementation goals. It has no overhead for * validation or tracking, and the API translation overhead is kept to the bare * minimum by the design of WebGPU. This API can be used for resource-demanding * applications and engines. * - * The `wgpu_hal` crate's main design choices: + * The `wgpu-hal` crate's main design choices: * * - Our traits are meant to be *portable*: proper use * should get equivalent results regardless of the backend. @@ -19,7 +19,7 @@ * validation, if any, and incorrect use will often cause undefined behavior. * This allows us to minimize the overhead we impose over the underlying * graphics system. If you need safety, the [`wgpu-core`] crate provides a - * safe API for driving `wgpu_hal`, implementing all necessary validation, + * safe API for driving `wgpu-hal`, implementing all necessary validation, * resource state tracking, and so on. (Note that `wgpu-core` is designed for * use via FFI; the [`wgpu`] crate provides more idiomatic Rust bindings for * `wgpu-core`.) Or, you can do your own validation. @@ -27,7 +27,7 @@ * - In the same vein, returned errors *only cover cases the user can't * anticipate*, like running out of memory or losing the device. Any errors * that the user could reasonably anticipate are their responsibility to - * avoid. For example, `wgpu_hal` returns no error for mapping a buffer that's + * avoid. For example, `wgpu-hal` returns no error for mapping a buffer that's * not mappable: as the buffer creator, the user should already know if they * can map it. * @@ -43,7 +43,7 @@ * - We map buffer contents *persistently*. This means that the buffer * can remain mapped on the CPU while the GPU reads or writes to it. * You must explicitly indicate when data might need to be - * transferred between CPU and GPU, if `wgpu_hal` indicates that the + * transferred between CPU and GPU, if `wgpu-hal` indicates that the * mapping is not coherent (that is, automatically synchronized * between the two devices). * @@ -62,7 +62,7 @@ * function documentation. For this reason, we recommend that iterators don't * do any mutating work. * - * Unfortunately, `wgpu_hal`'s safety requirements are not fully documented. + * Unfortunately, `wgpu-hal`'s safety requirements are not fully documented. * Ideally, all trait methods would have doc comments setting out the * requirements users must meet to ensure correct and portable behavior. If you * are aware of a specific requirement that a backend imposes that is not @@ -76,7 +76,7 @@ * * ## Primary backends * - * The `wgpu_hal` crate has full-featured backends implemented on the following + * The `wgpu-hal` crate has full-featured backends implemented on the following * platform graphics APIs: * * - Vulkan, available on Linux, Android, and Windows, using the [`ash`] crate's @@ -93,7 +93,7 @@ * * ## Secondary backends * - * The `wgpu_hal` crate has a partial implementation based on the following + * The `wgpu-hal` crate has a partial implementation based on the following * platform graphics API: * * - The GL backend is available anywhere OpenGL, OpenGL ES, or WebGL are @@ -110,6 +110,92 @@ * * [tdc]: wgt::DownlevelCapabilities * + * ## Traits + * + * The `wgpu-hal` crate defines a handful of traits that together + * represent a cross-platform abstraction for modern GPU APIs. + * + * - The [`Api`] trait represents a `wgpu-hal` backend. It has no methods of its + * own, only a collection of associated types. + * + * - [`Api::Instance`] implements the [`Instance`] trait. [`Instance::init`] + * creates an instance value, which you can use to enumerate the adapters + * available on the system. For example, [`vulkan::Api::Instance::init`][Ii] + * returns an instance that can enumerate the Vulkan physical devices on your + * system. + * + * - [`Api::Adapter`] implements the [`Adapter`] trait, representing a + * particular device from a particular backend. For example, a Vulkan instance + * might have a Lavapipe software adapter and a GPU-based adapter. + * + * - [`Api::Device`] implements the [`Device`] trait, representing an active + * link to a device. You get a device value by calling [`Adapter::open`], and + * then use it to create buffers, textures, shader modules, and so on. + * + * - [`Api::Queue`] implements the [`Queue`] trait, which you use to submit + * command buffers to a given device. + * + * - [`Api::CommandEncoder`] implements the [`CommandEncoder`] trait, which you + * use to build buffers of commands to submit to a queue. This has all the + * methods for drawing and running compute shaders, which is presumably what + * you're here for. + * + * - [`Api::Surface`] implements the [`Surface`] trait, which represents a + * swapchain for presenting images on the screen, via interaction with the + * system's window manager. + * + * The [`Api`] trait has various other associated types like [`Api::Buffer`] and + * [`Api::Texture`] that represent resources the rest of the interface can + * operate on, but these generally do not have their own traits. + * + * [Ii]: Instance::init + * + * ## Validation is the calling code's responsibility, not `wgpu-hal`'s + * + * As much as possible, `wgpu-hal` traits place the burden of validation, + * resource tracking, and state tracking on the caller, not on the trait + * implementations themselves. Anything which can reasonably be handled in + * backend-independent code should be. A `wgpu_hal` backend's sole obligation is + * to provide portable behavior, and report conditions that the calling code + * can't reasonably anticipate, like device loss or running out of memory. + * + * The `wgpu` crate collection is intended for use in security-sensitive + * applications, like web browsers, where the API is available to untrusted + * code. This means that `wgpu-core`'s validation is not simply a service to + * developers, to be provided opportunistically when the performance costs are + * acceptable and the necessary data is ready at hand. Rather, `wgpu-core`'s + * validation must be exhaustive, to ensure that even malicious content cannot + * provoke and exploit undefined behavior in the platform's graphics API. + * + * Because graphics APIs' requirements are complex, the only practical way for + * `wgpu` to provide exhaustive validation is to comprehensively track the + * lifetime and state of all the resources in the system. Implementing this + * separately for each backend is infeasible; effort would be better spent + * making the cross-platform validation in `wgpu-core` legible and trustworthy. + * Fortunately, the requirements are largely similar across the various + * platforms, so cross-platform validation is practical. + * + * Some backends have specific requirements that aren't practical to foist off + * on the `wgpu-hal` user. For example, properly managing macOS Objective-C or + * Microsoft COM reference counts is best handled by using appropriate pointer + * types within the backend. + * + * A desire for "defense in depth" may suggest performing additional validation + * in `wgpu-hal` when the opportunity arises, but this must be done with + * caution. Even experienced contributors infer the expectations their changes + * must meet by considering not just requirements made explicit in types, tests, + * assertions, and comments, but also those implicit in the surrounding code. + * When one sees validation or state-tracking code in `wgpu-hal`, it is tempting + * to conclude, "Oh, `wgpu-hal` checks for this, so `wgpu-core` needn't worry + * about it - that would be redundant!" The responsibility for exhaustive + * validation always rests with `wgpu-core`, regardless of what may or may not + * be checked in `wgpu-hal`. + * + * To this end, any "defense in depth" validation that does appear in `wgpu-hal` + * for requirements that `wgpu-core` should have enforced should report failure + * via the `unreachable!` macro, because problems detected at this stage always + * indicate a bug in `wgpu-core`. + * * ## Debugging * * Most of the information on the wiki [Debugging wgpu Applications][wiki-debug] @@ -645,7 +731,7 @@ pub trait CommandEncoder: WasmNotSendSync + fmt::Debug { /// This `CommandEncoder` must be in the "closed" state. unsafe fn begin_encoding(&mut self, label: Label) -> Result<(), DeviceError>; - /// Discard the command list under construction, if any. + /// Discard the command list under construction. /// /// If an error has occurred while recording commands, this /// is the only safe thing to do with the encoder. @@ -655,6 +741,10 @@ pub trait CommandEncoder: WasmNotSendSync + fmt::Debug { /// # Safety /// /// This `CommandEncoder` must be in the "recording" state. + /// + /// Callers must not assume that implementations of this + /// function are idempotent, and thus should not call it + /// multiple times in a row. unsafe fn discard_encoding(&mut self); /// Return a fresh [`CommandBuffer`] holding the recorded commands. @@ -1459,6 +1549,11 @@ pub struct ProgrammableStage<'a, A: Api> { pub entry_point: &'a str, /// Pipeline constants pub constants: &'a naga::back::PipelineConstants, + /// Whether workgroup scoped memory will be initialized with zero values for this stage. + /// + /// This is required by the WebGPU spec, but may have overhead which can be avoided + /// for cross-platform applications + pub zero_initialize_workgroup_memory: bool, } // Rust gets confused about the impl requirements for `A` @@ -1468,6 +1563,7 @@ impl Clone for ProgrammableStage<'_, A> { module: self.module, entry_point: self.entry_point, constants: self.constants, + zero_initialize_workgroup_memory: self.zero_initialize_workgroup_memory, } } } diff --git a/third_party/rust/wgpu-hal/src/metal/adapter.rs b/third_party/rust/wgpu-hal/src/metal/adapter.rs index b67d5c6f97fc..2c3700bd8a40 100644 --- a/third_party/rust/wgpu-hal/src/metal/adapter.rs +++ b/third_party/rust/wgpu-hal/src/metal/adapter.rs @@ -813,6 +813,10 @@ impl super::PrivateCapabilities { None }, timestamp_query_support, + supports_simd_scoped_operations: family_check + && (device.supports_family(MTLGPUFamily::Metal3) + || device.supports_family(MTLGPUFamily::Mac2) + || device.supports_family(MTLGPUFamily::Apple7)), } } @@ -898,6 +902,10 @@ impl super::PrivateCapabilities { features.set(F::RG11B10UFLOAT_RENDERABLE, self.format_rg11b10_all); features.set(F::SHADER_UNUSED_VERTEX_OUTPUT, true); + if self.supports_simd_scoped_operations { + features.insert(F::SUBGROUP | F::SUBGROUP_BARRIER); + } + features } @@ -952,6 +960,8 @@ impl super::PrivateCapabilities { max_vertex_buffers: self.max_vertex_buffers, max_vertex_attributes: 31, max_vertex_buffer_array_stride: base.max_vertex_buffer_array_stride, + min_subgroup_size: 4, + max_subgroup_size: 64, max_push_constant_size: 0x1000, min_uniform_buffer_offset_alignment: self.buffer_alignment as u32, min_storage_buffer_offset_alignment: self.buffer_alignment as u32, diff --git a/third_party/rust/wgpu-hal/src/metal/device.rs b/third_party/rust/wgpu-hal/src/metal/device.rs index 0906d2151064..2c8f5a2bfb69 100644 --- a/third_party/rust/wgpu-hal/src/metal/device.rs +++ b/third_party/rust/wgpu-hal/src/metal/device.rs @@ -112,7 +112,7 @@ impl super::Device { // TODO: support bounds checks on binding arrays binding_array: naga::proc::BoundsCheckPolicy::Unchecked, }, - zero_initialize_workgroup_memory: true, + zero_initialize_workgroup_memory: stage.zero_initialize_workgroup_memory, }; let pipeline_options = naga::back::msl::PipelineOptions { diff --git a/third_party/rust/wgpu-hal/src/metal/mod.rs b/third_party/rust/wgpu-hal/src/metal/mod.rs index 6aeafb0f8676..bf2b6d8a5143 100644 --- a/third_party/rust/wgpu-hal/src/metal/mod.rs +++ b/third_party/rust/wgpu-hal/src/metal/mod.rs @@ -269,6 +269,7 @@ struct PrivateCapabilities { supports_shader_primitive_index: bool, has_unified_memory: Option, timestamp_query_support: TimestampQuerySupport, + supports_simd_scoped_operations: bool, } #[derive(Clone, Debug)] diff --git a/third_party/rust/wgpu-hal/src/vulkan/adapter.rs b/third_party/rust/wgpu-hal/src/vulkan/adapter.rs index 266546379252..cf15f5d2f693 100644 --- a/third_party/rust/wgpu-hal/src/vulkan/adapter.rs +++ b/third_party/rust/wgpu-hal/src/vulkan/adapter.rs @@ -101,6 +101,9 @@ pub struct PhysicalDeviceFeatures { /// to Vulkan 1.3. zero_initialize_workgroup_memory: Option, + + /// Features provided by `VK_EXT_subgroup_size_control`, promoted to Vulkan 1.3. + subgroup_size_control: Option, } // This is safe because the structs have `p_next: *mut c_void`, which we null out/never read. @@ -148,6 +151,9 @@ impl PhysicalDeviceFeatures { if let Some(ref mut feature) = self.ray_query { info = info.push_next(feature); } + if let Some(ref mut feature) = self.subgroup_size_control { + info = info.push_next(feature); + } info } @@ -434,6 +440,17 @@ impl PhysicalDeviceFeatures { } else { None }, + subgroup_size_control: if device_api_version >= vk::API_VERSION_1_3 + || enabled_extensions.contains(&vk::ExtSubgroupSizeControlFn::name()) + { + Some( + vk::PhysicalDeviceSubgroupSizeControlFeatures::builder() + .subgroup_size_control(true) + .build(), + ) + } else { + None + }, } } @@ -638,6 +655,34 @@ impl PhysicalDeviceFeatures { ); } + if let Some(ref subgroup) = caps.subgroup { + if (caps.device_api_version >= vk::API_VERSION_1_3 + || caps.supports_extension(vk::ExtSubgroupSizeControlFn::name())) + && subgroup.supported_operations.contains( + vk::SubgroupFeatureFlags::BASIC + | vk::SubgroupFeatureFlags::VOTE + | vk::SubgroupFeatureFlags::ARITHMETIC + | vk::SubgroupFeatureFlags::BALLOT + | vk::SubgroupFeatureFlags::SHUFFLE + | vk::SubgroupFeatureFlags::SHUFFLE_RELATIVE, + ) + { + features.set( + F::SUBGROUP, + subgroup + .supported_stages + .contains(vk::ShaderStageFlags::COMPUTE | vk::ShaderStageFlags::FRAGMENT), + ); + features.set( + F::SUBGROUP_VERTEX, + subgroup + .supported_stages + .contains(vk::ShaderStageFlags::VERTEX), + ); + features.insert(F::SUBGROUP_BARRIER); + } + } + let supports_depth_format = |format| { supports_format( instance, @@ -773,6 +818,13 @@ pub struct PhysicalDeviceProperties { /// `VK_KHR_driver_properties` extension, promoted to Vulkan 1.2. driver: Option, + /// Additional `vk::PhysicalDevice` properties from Vulkan 1.1. + subgroup: Option, + + /// Additional `vk::PhysicalDevice` properties from the + /// `VK_EXT_subgroup_size_control` extension, promoted to Vulkan 1.3. + subgroup_size_control: Option, + /// The device API version. /// /// Which is the version of Vulkan supported for device-level functionality. @@ -888,6 +940,11 @@ impl PhysicalDeviceProperties { if self.supports_extension(vk::ExtImageRobustnessFn::name()) { extensions.push(vk::ExtImageRobustnessFn::name()); } + + // Require `VK_EXT_subgroup_size_control` if the associated feature was requested + if requested_features.contains(wgt::Features::SUBGROUP) { + extensions.push(vk::ExtSubgroupSizeControlFn::name()); + } } // Optional `VK_KHR_swapchain_mutable_format` @@ -987,6 +1044,14 @@ impl PhysicalDeviceProperties { .min(crate::MAX_VERTEX_BUFFERS as u32), max_vertex_attributes: limits.max_vertex_input_attributes, max_vertex_buffer_array_stride: limits.max_vertex_input_binding_stride, + min_subgroup_size: self + .subgroup_size_control + .map(|subgroup_size| subgroup_size.min_subgroup_size) + .unwrap_or(0), + max_subgroup_size: self + .subgroup_size_control + .map(|subgroup_size| subgroup_size.max_subgroup_size) + .unwrap_or(0), max_push_constant_size: limits.max_push_constants_size, min_uniform_buffer_offset_alignment: limits.min_uniform_buffer_offset_alignment as u32, min_storage_buffer_offset_alignment: limits.min_storage_buffer_offset_alignment as u32, @@ -1042,6 +1107,9 @@ impl super::InstanceShared { let supports_driver_properties = capabilities.device_api_version >= vk::API_VERSION_1_2 || capabilities.supports_extension(vk::KhrDriverPropertiesFn::name()); + let supports_subgroup_size_control = capabilities.device_api_version + >= vk::API_VERSION_1_3 + || capabilities.supports_extension(vk::ExtSubgroupSizeControlFn::name()); let supports_acceleration_structure = capabilities.supports_extension(vk::KhrAccelerationStructureFn::name()); @@ -1075,6 +1143,20 @@ impl super::InstanceShared { builder = builder.push_next(next); } + if capabilities.device_api_version >= vk::API_VERSION_1_1 { + let next = capabilities + .subgroup + .insert(vk::PhysicalDeviceSubgroupProperties::default()); + builder = builder.push_next(next); + } + + if supports_subgroup_size_control { + let next = capabilities + .subgroup_size_control + .insert(vk::PhysicalDeviceSubgroupSizeControlProperties::default()); + builder = builder.push_next(next); + } + let mut properties2 = builder.build(); unsafe { get_device_properties.get_physical_device_properties2(phd, &mut properties2); @@ -1190,6 +1272,16 @@ impl super::InstanceShared { builder = builder.push_next(next); } + // `VK_EXT_subgroup_size_control` is promoted to 1.3 + if capabilities.device_api_version >= vk::API_VERSION_1_3 + || capabilities.supports_extension(vk::ExtSubgroupSizeControlFn::name()) + { + let next = features + .subgroup_size_control + .insert(vk::PhysicalDeviceSubgroupSizeControlFeatures::default()); + builder = builder.push_next(next); + } + let mut features2 = builder.build(); unsafe { get_device_properties.get_physical_device_features2(phd, &mut features2); @@ -1382,6 +1474,9 @@ impl super::Instance { }), image_format_list: phd_capabilities.device_api_version >= vk::API_VERSION_1_2 || phd_capabilities.supports_extension(vk::KhrImageFormatListFn::name()), + subgroup_size_control: phd_features + .subgroup_size_control + .map_or(false, |ext| ext.subgroup_size_control == vk::TRUE), }; let capabilities = crate::Capabilities { limits: phd_capabilities.to_wgpu_limits(), @@ -1581,6 +1676,15 @@ impl super::Adapter { capabilities.push(spv::Capability::Geometry); } + if features.intersects(wgt::Features::SUBGROUP | wgt::Features::SUBGROUP_VERTEX) { + capabilities.push(spv::Capability::GroupNonUniform); + capabilities.push(spv::Capability::GroupNonUniformVote); + capabilities.push(spv::Capability::GroupNonUniformArithmetic); + capabilities.push(spv::Capability::GroupNonUniformBallot); + capabilities.push(spv::Capability::GroupNonUniformShuffle); + capabilities.push(spv::Capability::GroupNonUniformShuffleRelative); + } + if features.intersects( wgt::Features::SAMPLED_TEXTURE_AND_STORAGE_BUFFER_ARRAY_NON_UNIFORM_INDEXING | wgt::Features::UNIFORM_BUFFER_AND_STORAGE_TEXTURE_ARRAY_NON_UNIFORM_INDEXING, @@ -1616,7 +1720,13 @@ impl super::Adapter { true, // could check `super::Workarounds::SEPARATE_ENTRY_POINTS` ); spv::Options { - lang_version: (1, 0), + lang_version: if features + .intersects(wgt::Features::SUBGROUP | wgt::Features::SUBGROUP_VERTEX) + { + (1, 3) + } else { + (1, 0) + }, flags, capabilities: Some(capabilities.iter().cloned().collect()), bounds_check_policies: naga::proc::BoundsCheckPolicies { diff --git a/third_party/rust/wgpu-hal/src/vulkan/command.rs b/third_party/rust/wgpu-hal/src/vulkan/command.rs index 43a2471954c9..ceb44dfbe67b 100644 --- a/third_party/rust/wgpu-hal/src/vulkan/command.rs +++ b/third_party/rust/wgpu-hal/src/vulkan/command.rs @@ -104,6 +104,11 @@ impl crate::CommandEncoder for super::CommandEncoder { } unsafe fn discard_encoding(&mut self) { + // Safe use requires this is not called in the "closed" state, so the buffer + // shouldn't be null. Assert this to make sure we're not pushing null + // buffers to the discard pile. + assert_ne!(self.active, vk::CommandBuffer::null()); + self.discarded.push(self.active); self.active = vk::CommandBuffer::null(); } diff --git a/third_party/rust/wgpu-hal/src/vulkan/device.rs b/third_party/rust/wgpu-hal/src/vulkan/device.rs index 52b899900f6d..ec392533a0a6 100644 --- a/third_party/rust/wgpu-hal/src/vulkan/device.rs +++ b/third_party/rust/wgpu-hal/src/vulkan/device.rs @@ -2,6 +2,7 @@ use super::conv; use arrayvec::ArrayVec; use ash::{extensions::khr, vk}; +use naga::back::spv::ZeroInitializeWorkgroupMemoryMode; use parking_lot::Mutex; use std::{ @@ -737,7 +738,8 @@ impl super::Device { }; let needs_temp_options = !runtime_checks || !binding_map.is_empty() - || naga_shader.debug_source.is_some(); + || naga_shader.debug_source.is_some() + || !stage.zero_initialize_workgroup_memory; let mut temp_options; let options = if needs_temp_options { temp_options = self.naga_options.clone(); @@ -760,6 +762,10 @@ impl super::Device { file_name: debug.file_name.as_ref().as_ref(), }) } + if !stage.zero_initialize_workgroup_memory { + temp_options.zero_initialize_workgroup_memory = + ZeroInitializeWorkgroupMemoryMode::None; + } &temp_options } else { @@ -782,8 +788,14 @@ impl super::Device { } }; + let mut flags = vk::PipelineShaderStageCreateFlags::empty(); + if self.shared.private_caps.subgroup_size_control { + flags |= vk::PipelineShaderStageCreateFlags::ALLOW_VARYING_SUBGROUP_SIZE + } + let entry_point = CString::new(stage.entry_point).unwrap(); let create_info = vk::PipelineShaderStageCreateInfo::builder() + .flags(flags) .stage(conv::map_shader_stage(stage_flags)) .module(vk_module) .name(&entry_point) diff --git a/third_party/rust/wgpu-hal/src/vulkan/mod.rs b/third_party/rust/wgpu-hal/src/vulkan/mod.rs index 32443eff7e55..f5e2dfd396ca 100644 --- a/third_party/rust/wgpu-hal/src/vulkan/mod.rs +++ b/third_party/rust/wgpu-hal/src/vulkan/mod.rs @@ -238,6 +238,7 @@ struct PrivateCapabilities { robust_image_access2: bool, zero_initialize_workgroup_memory: bool, image_format_list: bool, + subgroup_size_control: bool, } bitflags::bitflags!( diff --git a/third_party/rust/wgpu-types/.cargo-checksum.json b/third_party/rust/wgpu-types/.cargo-checksum.json index 583ad75b3337..71969972cd84 100644 --- a/third_party/rust/wgpu-types/.cargo-checksum.json +++ b/third_party/rust/wgpu-types/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"287f78369f5104585982a6ad6a23bd7c9409d85ad1bb4611441ab64db39aeb7a","LICENSE.APACHE":"a6cba85bc92e0cff7a450b1d873c0eaa2e9fc96bf472df0247a26bec77bf3ff9","LICENSE.MIT":"c7fea58d1cfe49634cd92e54fc10a9d871f4b275321a4cd8c09e449122caaeb4","src/assertions.rs":"3fe98027aa73970c8ab7874a3e13dbfd6faa87df2081beb5c83aeec4c60f372f","src/lib.rs":"5e951fc3eda1a40cd13c7e5d8a059275571355886a1aad80c63e3869c2002595","src/math.rs":"4d03039736dd6926feb139bc68734cb59df34ede310427bbf059e5c925e0af3b"},"package":null} \ No newline at end of file +{"files":{"Cargo.toml":"9c95789feb6b72f758d225f0931bfa1c4cbe768cc8292a78324d89e58b9803c9","LICENSE.APACHE":"a6cba85bc92e0cff7a450b1d873c0eaa2e9fc96bf472df0247a26bec77bf3ff9","LICENSE.MIT":"c7fea58d1cfe49634cd92e54fc10a9d871f4b275321a4cd8c09e449122caaeb4","src/assertions.rs":"3fe98027aa73970c8ab7874a3e13dbfd6faa87df2081beb5c83aeec4c60f372f","src/lib.rs":"1426b5ed459028bd41a1e0d5e89e681f2bc3c34c60e68ba07cf16dc90054aa57","src/math.rs":"4d03039736dd6926feb139bc68734cb59df34ede310427bbf059e5c925e0af3b"},"package":null} \ No newline at end of file diff --git a/third_party/rust/wgpu-types/Cargo.toml b/third_party/rust/wgpu-types/Cargo.toml index b8c2bb0e7eab..c333a8fe0abc 100644 --- a/third_party/rust/wgpu-types/Cargo.toml +++ b/third_party/rust/wgpu-types/Cargo.toml @@ -45,7 +45,7 @@ features = ["serde_derive"] optional = true [dev-dependencies] -serde_json = "1.0.115" +serde_json = "1.0.116" [dev-dependencies.serde] version = "1" diff --git a/third_party/rust/wgpu-types/src/lib.rs b/third_party/rust/wgpu-types/src/lib.rs index fafa7d8cd747..6cb3c0eb2365 100644 --- a/third_party/rust/wgpu-types/src/lib.rs +++ b/third_party/rust/wgpu-types/src/lib.rs @@ -890,6 +890,30 @@ bitflags::bitflags! { /// /// This is a native only feature. const SHADER_INT64 = 1 << 55; + /// Allows compute and fragment shaders to use the subgroup operation built-ins + /// + /// Supported Platforms: + /// - Vulkan + /// - DX12 + /// - Metal + /// + /// This is a native only feature. + const SUBGROUP = 1 << 56; + /// Allows vertex shaders to use the subgroup operation built-ins + /// + /// Supported Platforms: + /// - Vulkan + /// + /// This is a native only feature. + const SUBGROUP_VERTEX = 1 << 57; + /// Allows shaders to use the subgroup barrier + /// + /// Supported Platforms: + /// - Vulkan + /// - Metal + /// + /// This is a native only feature. + const SUBGROUP_BARRIER = 1 << 58; } } @@ -1136,6 +1160,11 @@ pub struct Limits { /// The maximum value for each dimension of a `ComputePass::dispatch(x, y, z)` operation. /// Defaults to 65535. Higher is "better". pub max_compute_workgroups_per_dimension: u32, + + /// Minimal number of invocations in a subgroup. Higher is "better". + pub min_subgroup_size: u32, + /// Maximal number of invocations in a subgroup. Lower is "better". + pub max_subgroup_size: u32, /// Amount of storage available for push constants in bytes. Defaults to 0. Higher is "better". /// Requesting more than 0 during device creation requires [`Features::PUSH_CONSTANTS`] to be enabled. /// @@ -1146,7 +1175,6 @@ pub struct Limits { /// - OpenGL doesn't natively support push constants, and are emulated with uniforms, /// so this number is less useful but likely 256. pub max_push_constant_size: u32, - /// Maximum number of live non-sampler bindings. /// /// This limit only affects the d3d12 backend. Using a large number will allow the device @@ -1187,6 +1215,8 @@ impl Default for Limits { max_compute_workgroup_size_y: 256, max_compute_workgroup_size_z: 64, max_compute_workgroups_per_dimension: 65535, + min_subgroup_size: 0, + max_subgroup_size: 0, max_push_constant_size: 0, max_non_sampler_bindings: 1_000_000, } @@ -1218,6 +1248,8 @@ impl Limits { /// max_vertex_buffers: 8, /// max_vertex_attributes: 16, /// max_vertex_buffer_array_stride: 2048, + /// min_subgroup_size: 0, + /// max_subgroup_size: 0, /// max_push_constant_size: 0, /// min_uniform_buffer_offset_alignment: 256, /// min_storage_buffer_offset_alignment: 256, @@ -1254,6 +1286,8 @@ impl Limits { max_vertex_buffers: 8, max_vertex_attributes: 16, max_vertex_buffer_array_stride: 2048, + min_subgroup_size: 0, + max_subgroup_size: 0, max_push_constant_size: 0, min_uniform_buffer_offset_alignment: 256, min_storage_buffer_offset_alignment: 256, @@ -1296,6 +1330,8 @@ impl Limits { /// max_vertex_buffers: 8, /// max_vertex_attributes: 16, /// max_vertex_buffer_array_stride: 255, // + + /// min_subgroup_size: 0, + /// max_subgroup_size: 0, /// max_push_constant_size: 0, /// min_uniform_buffer_offset_alignment: 256, /// min_storage_buffer_offset_alignment: 256, @@ -1326,6 +1362,8 @@ impl Limits { max_compute_workgroup_size_y: 0, max_compute_workgroup_size_z: 0, max_compute_workgroups_per_dimension: 0, + min_subgroup_size: 0, + max_subgroup_size: 0, // Value supported by Intel Celeron B830 on Windows (OpenGL 3.1) max_inter_stage_shader_components: 31, @@ -1418,6 +1456,10 @@ impl Limits { compare!(max_vertex_buffers, Less); compare!(max_vertex_attributes, Less); compare!(max_vertex_buffer_array_stride, Less); + if self.min_subgroup_size > 0 && self.max_subgroup_size > 0 { + compare!(min_subgroup_size, Greater); + compare!(max_subgroup_size, Less); + } compare!(max_push_constant_size, Less); compare!(min_uniform_buffer_offset_alignment, Greater); compare!(min_storage_buffer_offset_alignment, Greater);