diff --git a/dom/webgpu/Utility.cpp b/dom/webgpu/Utility.cpp index 0b19cef6dad4..1f361dab5a27 100644 --- a/dom/webgpu/Utility.cpp +++ b/dom/webgpu/Utility.cpp @@ -228,6 +228,146 @@ ffi::WGPUTextureFormat ConvertTextureFormat( case dom::GPUTextureFormat::Depth32float_stencil8: result.tag = ffi::WGPUTextureFormat_Depth32FloatStencil8; break; + case dom::GPUTextureFormat::Astc_4x4_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B4x4; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_4x4_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B4x4; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_5x4_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B5x4; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_5x4_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B5x4; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_5x5_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B5x5; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_5x5_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B5x5; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_6x5_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B6x5; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_6x5_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B6x5; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_6x6_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B6x6; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_6x6_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B6x6; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_8x5_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B8x5; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_8x5_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B8x5; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_8x6_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B8x6; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_8x6_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B8x6; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_8x8_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B8x8; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_8x8_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B8x8; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_10x5_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B10x5; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_10x5_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B10x5; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_10x6_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B10x6; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_10x6_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B10x6; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_10x8_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B10x8; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_10x8_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B10x8; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_10x10_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B10x10; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_10x10_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B10x10; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_12x10_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B12x10; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_12x10_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B12x10; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; + case dom::GPUTextureFormat::Astc_12x12_unorm: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B12x12; + result.astc.channel = ffi::WGPUAstcChannel_Unorm; + break; + case dom::GPUTextureFormat::Astc_12x12_unorm_srgb: + result.tag = ffi::WGPUTextureFormat_Astc; + result.astc.block = ffi::WGPUAstcBlock_B12x12; + result.astc.channel = ffi::WGPUAstcChannel_UnormSrgb; + break; } // Clang will check for us that the switch above is exhaustive, diff --git a/dom/webidl/WebGPU.webidl b/dom/webidl/WebGPU.webidl index a6d790cce931..6945f6d116bc 100644 --- a/dom/webidl/WebGPU.webidl +++ b/dom/webidl/WebGPU.webidl @@ -382,6 +382,37 @@ enum GPUTextureFormat { "bc6h-rgb-float", "bc7-rgba-unorm", "bc7-rgba-unorm-srgb", + + // ASTC compressed formats usable if "texture-compression-astc" is both + // supported by the device/user agent and enabled in requestDevice. + "astc-4x4-unorm", + "astc-4x4-unorm-srgb", + "astc-5x4-unorm", + "astc-5x4-unorm-srgb", + "astc-5x5-unorm", + "astc-5x5-unorm-srgb", + "astc-6x5-unorm", + "astc-6x5-unorm-srgb", + "astc-6x6-unorm", + "astc-6x6-unorm-srgb", + "astc-8x5-unorm", + "astc-8x5-unorm-srgb", + "astc-8x6-unorm", + "astc-8x6-unorm-srgb", + "astc-8x8-unorm", + "astc-8x8-unorm-srgb", + "astc-10x5-unorm", + "astc-10x5-unorm-srgb", + "astc-10x6-unorm", + "astc-10x6-unorm-srgb", + "astc-10x8-unorm", + "astc-10x8-unorm-srgb", + "astc-10x10-unorm", + "astc-10x10-unorm-srgb", + "astc-12x10-unorm", + "astc-12x10-unorm-srgb", + "astc-12x12-unorm", + "astc-12x12-unorm-srgb", }; [Func="mozilla::webgpu::Instance::PrefEnabled", 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 cb10f8f72a87..9ceb7a0f51d4 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,226 +1,282 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,features,texture_formats:canvas_configuration:*] implementation-status: backlog [:format="astc-10x10-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x10-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-10x10-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x10-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-10x10-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x10-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-10x10-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x10-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-10x5-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x5-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-10x5-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x5-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-10x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-10x5-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x5-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-10x6-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x6-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-10x6-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x6-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-10x6-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x6-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-10x6-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x6-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-10x8-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x8-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-10x8-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x8-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-10x8-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x8-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-10x8-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-10x8-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-12x10-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-12x10-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-12x10-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-12x10-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-12x10-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-12x10-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-12x10-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-12x10-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-12x12-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-12x12-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-12x12-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-12x12-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-12x12-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-12x12-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-12x12-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-12x12-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-4x4-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-4x4-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-4x4-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-4x4-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-4x4-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-4x4-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-4x4-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-4x4-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-5x4-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-5x4-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-5x4-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-5x4-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-5x4-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-5x4-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-5x4-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-5x4-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-5x5-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-5x5-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-5x5-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-5x5-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-5x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-5x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-5x5-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-5x5-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-6x5-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-6x5-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-6x5-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-6x5-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-6x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-6x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-6x5-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-6x5-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-6x6-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-6x6-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-6x6-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-6x6-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-6x6-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-6x6-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-6x6-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-6x6-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-8x5-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x5-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-8x5-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x5-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-8x5-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x5-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-8x5-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x5-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-8x6-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x6-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-8x6-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x6-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-8x6-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x6-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-8x6-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x6-unorm-srgb";canvasType="onscreen";enable_required_feature=true] [:format="astc-8x8-unorm";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x8-unorm";canvasType="offscreen";enable_required_feature=true] [:format="astc-8x8-unorm";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x8-unorm";canvasType="onscreen";enable_required_feature=true] [:format="astc-8x8-unorm-srgb";canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x8-unorm-srgb";canvasType="offscreen";enable_required_feature=true] [:format="astc-8x8-unorm-srgb";canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:format="astc-8x8-unorm-srgb";canvasType="onscreen";enable_required_feature=true] @@ -488,226 +544,282 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,features,texture_formats:canvas_configuration_view_formats:*] implementation-status: backlog [:viewFormats=["astc-10x10-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x10-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-10x10-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x10-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-10x10-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x10-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-10x10-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x10-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-10x5-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x5-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-10x5-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x5-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-10x6-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x6-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-10x6-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x6-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-10x8-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x8-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-10x8-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x8-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-10x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-10x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-10x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-12x10-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-12x10-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-12x10-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-12x10-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-12x10-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-12x10-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-12x10-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-12x10-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-12x12-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-12x12-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-12x12-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-12x12-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-12x12-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-12x12-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-12x12-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-12x12-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-4x4-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-4x4-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-4x4-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-4x4-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-4x4-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-4x4-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-4x4-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-4x4-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-5x4-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-5x4-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-5x4-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-5x4-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-5x4-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-5x4-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-5x4-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-5x4-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-5x5-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-5x5-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-5x5-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-5x5-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-5x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-6x5-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-6x5-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-6x5-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-6x5-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-6x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-6x6-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-6x6-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-6x6-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-6x6-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-6x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-6x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-6x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-6x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-8x5-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x5-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-8x5-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x5-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-8x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x5-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-8x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x5-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-8x6-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x6-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-8x6-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x6-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x6-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-8x8-unorm"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x8-unorm"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-8x8-unorm"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x8-unorm"\];canvasType="onscreen";enable_required_feature=true] [:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="offscreen";enable_required_feature=true] [:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=false] + expected: FAIL [:viewFormats=["astc-8x8-unorm-srgb"\];canvasType="onscreen";enable_required_feature=true] @@ -1058,114 +1170,142 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,features,texture_formats:texture_descriptor:*] implementation-status: backlog [:format="astc-10x10-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x10-unorm";enable_required_feature=true] [:format="astc-10x10-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x10-unorm-srgb";enable_required_feature=true] [:format="astc-10x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x5-unorm";enable_required_feature=true] [:format="astc-10x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x5-unorm-srgb";enable_required_feature=true] [:format="astc-10x6-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x6-unorm";enable_required_feature=true] [:format="astc-10x6-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x6-unorm-srgb";enable_required_feature=true] [:format="astc-10x8-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x8-unorm";enable_required_feature=true] [:format="astc-10x8-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x8-unorm-srgb";enable_required_feature=true] [:format="astc-12x10-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-12x10-unorm";enable_required_feature=true] [:format="astc-12x10-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-12x10-unorm-srgb";enable_required_feature=true] [:format="astc-12x12-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-12x12-unorm";enable_required_feature=true] [:format="astc-12x12-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-12x12-unorm-srgb";enable_required_feature=true] [:format="astc-4x4-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-4x4-unorm";enable_required_feature=true] [:format="astc-4x4-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-4x4-unorm-srgb";enable_required_feature=true] [:format="astc-5x4-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-5x4-unorm";enable_required_feature=true] [:format="astc-5x4-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-5x4-unorm-srgb";enable_required_feature=true] [:format="astc-5x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-5x5-unorm";enable_required_feature=true] [:format="astc-5x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-5x5-unorm-srgb";enable_required_feature=true] [:format="astc-6x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-6x5-unorm";enable_required_feature=true] [:format="astc-6x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-6x5-unorm-srgb";enable_required_feature=true] [:format="astc-6x6-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-6x6-unorm";enable_required_feature=true] [:format="astc-6x6-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-6x6-unorm-srgb";enable_required_feature=true] [:format="astc-8x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-8x5-unorm";enable_required_feature=true] [:format="astc-8x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-8x5-unorm-srgb";enable_required_feature=true] [:format="astc-8x6-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-8x6-unorm";enable_required_feature=true] [:format="astc-8x6-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-8x6-unorm-srgb";enable_required_feature=true] [:format="astc-8x8-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-8x8-unorm";enable_required_feature=true] [:format="astc-8x8-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-8x8-unorm-srgb";enable_required_feature=true] @@ -1288,114 +1428,142 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,features,texture_formats:texture_descriptor_view_formats:*] implementation-status: backlog [:format="astc-10x10-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x10-unorm";enable_required_feature=true] [:format="astc-10x10-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x10-unorm-srgb";enable_required_feature=true] [:format="astc-10x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x5-unorm";enable_required_feature=true] [:format="astc-10x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x5-unorm-srgb";enable_required_feature=true] [:format="astc-10x6-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x6-unorm";enable_required_feature=true] [:format="astc-10x6-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x6-unorm-srgb";enable_required_feature=true] [:format="astc-10x8-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x8-unorm";enable_required_feature=true] [:format="astc-10x8-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x8-unorm-srgb";enable_required_feature=true] [:format="astc-12x10-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-12x10-unorm";enable_required_feature=true] [:format="astc-12x10-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-12x10-unorm-srgb";enable_required_feature=true] [:format="astc-12x12-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-12x12-unorm";enable_required_feature=true] [:format="astc-12x12-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-12x12-unorm-srgb";enable_required_feature=true] [:format="astc-4x4-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-4x4-unorm";enable_required_feature=true] [:format="astc-4x4-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-4x4-unorm-srgb";enable_required_feature=true] [:format="astc-5x4-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-5x4-unorm";enable_required_feature=true] [:format="astc-5x4-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-5x4-unorm-srgb";enable_required_feature=true] [:format="astc-5x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-5x5-unorm";enable_required_feature=true] [:format="astc-5x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-5x5-unorm-srgb";enable_required_feature=true] [:format="astc-6x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-6x5-unorm";enable_required_feature=true] [:format="astc-6x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-6x5-unorm-srgb";enable_required_feature=true] [:format="astc-6x6-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-6x6-unorm";enable_required_feature=true] [:format="astc-6x6-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-6x6-unorm-srgb";enable_required_feature=true] [:format="astc-8x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-8x5-unorm";enable_required_feature=true] [:format="astc-8x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-8x5-unorm-srgb";enable_required_feature=true] [:format="astc-8x6-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-8x6-unorm";enable_required_feature=true] [:format="astc-8x6-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-8x6-unorm-srgb";enable_required_feature=true] [:format="astc-8x8-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-8x8-unorm";enable_required_feature=true] [:format="astc-8x8-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-8x8-unorm-srgb";enable_required_feature=true] @@ -1518,114 +1686,142 @@ [cts.https.html?q=webgpu:api,validation,capability_checks,features,texture_formats:texture_view_descriptor:*] implementation-status: backlog [:format="astc-10x10-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x10-unorm";enable_required_feature=true] [:format="astc-10x10-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x10-unorm-srgb";enable_required_feature=true] [:format="astc-10x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x5-unorm";enable_required_feature=true] [:format="astc-10x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x5-unorm-srgb";enable_required_feature=true] [:format="astc-10x6-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x6-unorm";enable_required_feature=true] [:format="astc-10x6-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x6-unorm-srgb";enable_required_feature=true] [:format="astc-10x8-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-10x8-unorm";enable_required_feature=true] [:format="astc-10x8-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-10x8-unorm-srgb";enable_required_feature=true] [:format="astc-12x10-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-12x10-unorm";enable_required_feature=true] [:format="astc-12x10-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-12x10-unorm-srgb";enable_required_feature=true] [:format="astc-12x12-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-12x12-unorm";enable_required_feature=true] [:format="astc-12x12-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-12x12-unorm-srgb";enable_required_feature=true] [:format="astc-4x4-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-4x4-unorm";enable_required_feature=true] [:format="astc-4x4-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-4x4-unorm-srgb";enable_required_feature=true] [:format="astc-5x4-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-5x4-unorm";enable_required_feature=true] [:format="astc-5x4-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-5x4-unorm-srgb";enable_required_feature=true] [:format="astc-5x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-5x5-unorm";enable_required_feature=true] [:format="astc-5x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-5x5-unorm-srgb";enable_required_feature=true] [:format="astc-6x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-6x5-unorm";enable_required_feature=true] [:format="astc-6x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-6x5-unorm-srgb";enable_required_feature=true] [:format="astc-6x6-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-6x6-unorm";enable_required_feature=true] [:format="astc-6x6-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-6x6-unorm-srgb";enable_required_feature=true] [:format="astc-8x5-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-8x5-unorm";enable_required_feature=true] [:format="astc-8x5-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-8x5-unorm-srgb";enable_required_feature=true] [:format="astc-8x6-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-8x6-unorm";enable_required_feature=true] [:format="astc-8x6-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-8x6-unorm-srgb";enable_required_feature=true] [:format="astc-8x8-unorm";enable_required_feature=false] + expected: FAIL [:format="astc-8x8-unorm";enable_required_feature=true] [:format="astc-8x8-unorm-srgb";enable_required_feature=false] + expected: FAIL [:format="astc-8x8-unorm-srgb";enable_required_feature=true]