tests/shader-runner: Add a non-const-indexing test for asfloat() result storage.

This commit is contained in:
Conor McCarthy 2023-12-05 14:43:12 +10:00 committed by Alexandre Julliard
parent 2037daae32
commit af86cdf713
Notes: Alexandre Julliard 2023-12-11 23:20:29 +01:00
Approved-by: Giovanni Mascellani (@giomasce)
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/498

View File

@ -196,6 +196,26 @@ draw quad
probe all rgba (1126, 3344, 5566, 3788)
[pixel shader]
uint i, j;
float4 main() : sv_target
{
float mut1[4] = {1, 2, 3, 4};
/* dxc emits a pointer bitcast, which results in a VSIR MOV with mismatched data types. */
mut1[i] = asfloat(j);
return float4(mut1[0], mut1[1], mut1[2], mut1[3]);
}
[test]
uniform 0 uint 1
uniform 1 uint 0x40a00000
draw quad
probe all rgba (1, 5, 3, 4)
[pixel shader]
uniform float4 f[4];
uniform uint4 u;