tests/shader_runner: Introduce the "u32" probe format.

This commit is contained in:
Henri Verbeet
2025-06-06 00:25:11 +02:00
parent 95cf0a8b2c
commit 9c987e5a0b
Notes: Henri Verbeet 2025-06-10 18:06:45 +02:00
Approved-by: Giovanni Mascellani (@giomasce)
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1555
28 changed files with 357 additions and 369 deletions

View File

@@ -51,7 +51,7 @@ uniform 0 uint4 0x020001 0x040003 0x060005 0x080007
uniform 4 uint4 0x120011 0x140013 0x160015 0x180017
uniform 8 uint4 0x220021 0x240023 0x260025 0x280027
draw quad
probe (0, 0) rgbaui(1, 1, 1, 1)
probe (0, 0) u32(1, 1, 1, 1)
% Minimum precision types have a funny behavior with respect to stride in SM6:
% DXC allocates them assuming they're 32 bit, and the generated code first loads
@@ -95,7 +95,7 @@ uniform 0 uint4 0x020001 0x040003 0x060005 0x080007
uniform 4 uint4 0x120011 0x140013 0x160015 0x180017
uniform 8 uint4 0x220021 0x240023 0x260025 0x280027
draw quad
todo probe (0, 0) rgbaui(1, 1, 1, 1)
todo probe (0, 0) u32(1, 1, 1, 1)
% Same tests for signed integers
@@ -123,7 +123,7 @@ uniform 0 uint4 0x020001 0x040003 0x060005 0x080007
uniform 4 uint4 0x120011 0x140013 0x160015 0x180017
uniform 8 uint4 0x220021 0x240023 0x260025 0x280027
draw quad
probe (0, 0) rgbaui(1, 1, 1, 1)
probe (0, 0) u32(1, 1, 1, 1)
[require]
shader model >= 6.0
@@ -154,7 +154,7 @@ uniform 0 uint4 0x020001 0x040003 0x060005 0x080007
uniform 4 uint4 0x120011 0x140013 0x160015 0x180017
uniform 8 uint4 0x220021 0x240023 0x260025 0x280027
draw quad
todo probe (0, 0) rgbaui(1, 1, 1, 1)
todo probe (0, 0) u32(1, 1, 1, 1)
% Same tests for floating point numbers
@@ -182,7 +182,7 @@ uniform 0 float4 1.0 2.0 3.0 4.0
uniform 4 float4 11.0 12.0 13.0 14.0
uniform 8 float4 21.0 22.0 23.0 24.0
draw quad
probe (0, 0) rgbaui(1, 1, 1, 1)
probe (0, 0) u32(1, 1, 1, 1)
[require]
shader model >= 6.0
@@ -213,7 +213,7 @@ uniform 0 uint4 0x40003c00 0x44004200 0x46004500 0x48004700
uniform 4 uint4 0x4a004980 0x4b004a80 0x4c004b80 0x4c804c40
uniform 8 uint4 0x4d804d40 0x4e004dc0 0x4e804e40 0x4f004ec0
draw quad
todo probe (0, 0) rgbaui(1, 1, 1, 1)
todo probe (0, 0) u32(1, 1, 1, 1)
[require]
shader model >= 4.0
@@ -237,11 +237,11 @@ uniform 0 uint 0
uniform 1 uint 100
draw quad
% In D3D12 with SM5 all reads to the array return 0
if(sm>=6 | !d3d12) probe (0, 0) rgbaui(100, 2, 0x7ff, 0xfff)
if(sm>=6 | !d3d12) probe (0, 0) u32(100, 2, 0x7ff, 0xfff)
uniform 0 uint 2
uniform 1 uint 1000
draw quad
if(sm>=6 | !d3d12) probe (0, 0) rgbaui(1, 2, 1000, 0xfff)
if(sm>=6 | !d3d12) probe (0, 0) u32(1, 2, 1000, 0xfff)
[rtv 0]
format r32g32b32a32-sint
@@ -263,11 +263,11 @@ uniform 0 uint 0
uniform 1 uint 100
draw quad
% In D3D12 with SM5 all reads to the array return 0
if(sm>=6 | !d3d12) probe (0, 0) rgbaui(100, 2, 0x7ff, 0xfff)
if(sm>=6 | !d3d12) probe (0, 0) u32(100, 2, 0x7ff, 0xfff)
uniform 0 uint 2
uniform 1 uint 1000
draw quad
if(sm>=6 | !d3d12) probe (0, 0) rgbaui(1, 2, 1000, 0xfff)
if(sm>=6 | !d3d12) probe (0, 0) u32(1, 2, 1000, 0xfff)
[rtv 0]
format r32g32b32a32-float