tests: Test array initializers.

Signed-off-by: Francisco Casas <fcasas@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Francisco Casas 2022-02-02 13:46:17 +01:00 committed by Alexandre Julliard
parent 13a1ba4263
commit dbcf063489
3 changed files with 76 additions and 0 deletions

View File

@ -68,6 +68,8 @@ vkd3d_shader_tests = \
tests/hlsl-function-overload.shader_test \
tests/hlsl-gather-offset.shader_test \
tests/hlsl-gather.shader_test \
tests/hlsl-initializer-local-array.shader_test \
tests/hlsl-initializer-static-array.shader_test \
tests/hlsl-intrinsic-override.shader_test \
tests/hlsl-invalid.shader_test \
tests/hlsl-majority-pragma.shader_test \
@ -295,6 +297,8 @@ XFAIL_TESTS = \
tests/cast-to-int.shader_test \
tests/cast-to-uint.shader_test \
tests/hlsl-array-dimension.shader_test \
tests/hlsl-initializer-local-array.shader_test \
tests/hlsl-initializer-static-array.shader_test \
tests/hlsl-bool-cast.shader_test \
tests/hlsl-duplicate-modifiers.shader_test \
tests/hlsl-for.shader_test \

View File

@ -0,0 +1,35 @@
[pixel shader]
float4 main() : SV_TARGET
{
float4 array_loc[3] = {
11, 12, 13, 14,
21, 22, 23, 24,
31, 32, 33, 34
};
return array_loc[1];
}
[test]
draw quad
probe all rgba (21, 22, 23, 24)
[pixel shader]
float4 main() : SV_TARGET
{
float4 array_loc[2][4] = {
11, 12, 13, 14,
21, 22, 23, 24,
31, 32, 33, 34,
41, 42, 43, 44,
51, 52, 53, 54,
61, 62, 63, 64,
71, 72, 73, 74,
81, 82, 83, 84,
};
return array_loc[1][2];
}
[test]
draw quad
probe all rgba (71, 72, 73, 74)

View File

@ -0,0 +1,37 @@
[pixel shader]
static const float4 array_st[3] = {
11, 12, 13, 14,
21, 22, 23, 24,
31, 32, 33, 34
};
float4 main() : SV_TARGET
{
return array_st[1];
}
[test]
draw quad
probe all rgba (21, 22, 23, 24)
[pixel shader]
static const float4 array_st[4][2] = {
11, 12, 13, 14,
21, 22, 23, 24,
31, 32, 33, 34,
41, 42, 43, 44,
51, 52, 53, 54,
61, 62, 63, 64,
71, 72, 73, 74,
81, 82, 83, 84,
};
float4 main() : SV_TARGET
{
return array_st[2][1];
}
[test]
draw quad
probe all rgba (61, 62, 63, 64)