From 9ab1cadaa5f64787db4bfa2f1e562887f24c997f Mon Sep 17 00:00:00 2001 From: Giovanni Mascellani Date: Fri, 23 May 2025 23:38:14 +0200 Subject: [PATCH] tests/hlsl: Mark some tests in wave-ops-uint.shader_test as buggy on MoltenVK. It seems that SPIRV-Cross is generating bad MSL code, and Metal rejects it. --- tests/hlsl/wave-ops-uint.shader_test | 28 ++++++++++++++-------------- tests/shader_runner_d3d12.c | 2 +- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/tests/hlsl/wave-ops-uint.shader_test b/tests/hlsl/wave-ops-uint.shader_test index 5fdeb242f..e63ac9f8c 100644 --- a/tests/hlsl/wave-ops-uint.shader_test +++ b/tests/hlsl/wave-ops-uint.shader_test @@ -367,7 +367,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0x1300000002, 21) probe uav 1 (1) rgui64(0x1300000002, 21) probe uav 1 (2) rgui64(0x1300000002, 21) @@ -389,7 +389,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0x2a00000008, 31) probe uav 1 (1) rgui64(0x2a00000008, 31) probe uav 1 (2) rgui64(0x2a00000008, 31) @@ -407,7 +407,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0xe400000008, 0x780) probe uav 1 (1) rgui64(0xe400000008, 0x780) probe uav 1 (2) rgui64(0xe400000008, 0x780) @@ -425,7 +425,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0x800000001, 4) probe uav 1 (1) rgui64(0x800000001, 4) probe uav 1 (2) rgui64(0x800000001, 4) @@ -443,7 +443,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0xf00000002, 16) probe uav 1 (1) rgui64(0xf00000002, 16) probe uav 1 (2) rgui64(0xf00000002, 16) @@ -461,7 +461,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0, 0) probe uav 1 (1) rgui64( 0x800000001, 16) probe uav 1 (2) rgui64(0x1300000002, 21) @@ -479,7 +479,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(1, 1) probe uav 1 (1) rgui64( 0x800000001, 16) probe uav 1 (2) rgui64(0x1300000001, 80) @@ -497,7 +497,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0x800000000, 0) probe uav 1 (1) rgui64(0x800000000, 0) probe uav 1 (2) rgui64(0x800000000, 0) @@ -515,7 +515,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0xf00000007, 0x17) probe uav 1 (1) rgui64(0xf00000007, 0x17) probe uav 1 (2) rgui64(0xf00000007, 0x17) @@ -533,7 +533,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0x400000006, 0x17) probe uav 1 (1) rgui64(0x400000006, 0x17) probe uav 1 (2) rgui64(0x400000006, 0x17) @@ -562,7 +562,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0x600000005, 0x800000007) probe uav 1 (1) rgui64(0x200000001, 0x400000003) probe uav 1 (2) rgui64(0xe0000000d, 0x100000000f) @@ -582,7 +582,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0xa00000009, 0xc0000000b) probe uav 1 (1) rgui64(0xe0000000d, 0x100000000f) probe uav 1 (2) rgui64(0x200000001, 0x400000003) @@ -602,7 +602,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0xe0000000d, 0x100000000f) probe uav 1 (1) rgui64(0xa00000009, 0xc0000000b) probe uav 1 (2) rgui64(0x600000005, 0x800000007) @@ -622,7 +622,7 @@ void main(uint id : SV_GroupIndex) } [test] -dispatch 4 1 1 +bug(mvk) dispatch 4 1 1 probe uav 1 (0) rgui64(0xa00000009, 0xc0000000b) probe uav 1 (1) rgui64(0xa00000009, 0xc0000000b) probe uav 1 (2) rgui64(0xa00000009, 0xc0000000b) diff --git a/tests/shader_runner_d3d12.c b/tests/shader_runner_d3d12.c index 52d382481..8fa1d3cdf 100644 --- a/tests/shader_runner_d3d12.c +++ b/tests/shader_runner_d3d12.c @@ -383,7 +383,7 @@ static bool d3d12_runner_dispatch(struct shader_runner *r, unsigned int x, unsig cs.pShaderBytecode = ID3D10Blob_GetBufferPointer(cs_code); cs.BytecodeLength = ID3D10Blob_GetBufferSize(cs_code); - todo_if(runner->r.is_todo) + todo_if(runner->r.is_todo) bug_if(runner->r.is_bug) pso = create_compute_pipeline_state(device, root_signature, cs); ID3D10Blob_Release(cs_code);