diff --git a/src/webgpu/listing_meta.json b/src/webgpu/listing_meta.json index 352f16849f4a..5e4415b59506 100644 --- a/src/webgpu/listing_meta.json +++ b/src/webgpu/listing_meta.json @@ -1979,6 +1979,7 @@ "webgpu:shader,validation,const_assert,const_assert:constant_expression_logical_or_no_assert:*": { "subcaseMS": 1.373 }, "webgpu:shader,validation,const_assert,const_assert:constant_expression_no_assert:*": { "subcaseMS": 1.655 }, "webgpu:shader,validation,const_assert,const_assert:evaluation_stage:*": { "subcaseMS": 3.367 }, + "webgpu:shader,validation,decl,assignment_statement:vector_swizzle_assignment:*": { "subcaseMS": 84.344 }, "webgpu:shader,validation,decl,compound_statement:decl_conflict:*": { "subcaseMS": 5.225 }, "webgpu:shader,validation,decl,compound_statement:decl_use:*": { "subcaseMS": 0.625 }, "webgpu:shader,validation,decl,const:assert:*": { "subcaseMS": 0.378 }, diff --git a/src/webgpu/shader/validation/decl/assignment_statement.spec.ts b/src/webgpu/shader/validation/decl/assignment_statement.spec.ts index 2968bf46c428..29776e0a4daa 100644 --- a/src/webgpu/shader/validation/decl/assignment_statement.spec.ts +++ b/src/webgpu/shader/validation/decl/assignment_statement.spec.ts @@ -56,15 +56,15 @@ g.test('vector_indexed_assignment') const kSwizzleTests = { single: { src: 'v.x = 1.0', - pass: true, + pass: (t: ShaderValidationTest) => true, }, multi: { src: 'v.xy = vec2(1.0, 2.0)', - pass: false, + pass: (t: ShaderValidationTest) => false || t.hasLanguageFeature('swizzle_assignment'), }, swizzleswizzle: { src: 'v.xy.x = 1.0', - pass: false, + pass: (t: ShaderValidationTest) => false || t.hasLanguageFeature('swizzle_assignment'), }, }; @@ -78,7 +78,7 @@ g.test('vector_swizzle_assignment') var v: vec4 = vec4(0.0, 0.0, 0.0, 0.0); ${kSwizzleTests[t.params.case].src}; }`; - t.expectCompileResult(kSwizzleTests[t.params.case].pass, wgsl); + t.expectCompileResult(kSwizzleTests[t.params.case].pass(t), wgsl); }); g.test('compound_assignment_with_swizzle')