Module: vkd3d Branch: master Commit: 6061a4e6e360485d7d715f0eaf792e8e76ebacd6 URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=6061a4e6e360485d7d715f0e...
Author: Francisco Casas fcasas@codeweavers.com Date: Thu Feb 3 23:44:21 2022 +0100
tests: Test nested 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
---
Makefile.am | 2 ++ tests/hlsl-initializer-nested.shader_test | 56 +++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+)
diff --git a/Makefile.am b/Makefile.am index b045cec..92c49c3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -70,6 +70,7 @@ vkd3d_shader_tests = \ tests/hlsl-gather.shader_test \ tests/hlsl-initializer-invalid-arg-count.shader_test \ tests/hlsl-initializer-local-array.shader_test \ + tests/hlsl-initializer-nested.shader_test \ tests/hlsl-initializer-numeric.shader_test \ tests/hlsl-initializer-static-array.shader_test \ tests/hlsl-initializer-struct.shader_test \ @@ -302,6 +303,7 @@ XFAIL_TESTS = \ tests/hlsl-array-dimension.shader_test \ tests/hlsl-initializer-invalid-arg-count.shader_test \ tests/hlsl-initializer-local-array.shader_test \ + tests/hlsl-initializer-nested.shader_test \ tests/hlsl-initializer-numeric.shader_test \ tests/hlsl-initializer-static-array.shader_test \ tests/hlsl-initializer-struct.shader_test \ diff --git a/tests/hlsl-initializer-nested.shader_test b/tests/hlsl-initializer-nested.shader_test new file mode 100644 index 0000000..b00259c --- /dev/null +++ b/tests/hlsl-initializer-nested.shader_test @@ -0,0 +1,56 @@ +[pixel shader] +float4 main() : sv_target +{ + float4 aaa = {1, {{{2, {3}}, 4}}}; + return aaa; +} + +[test] +draw quad +probe all rgba (1, 2, 3, 4) + + +[pixel shader] +float4 main() : sv_target +{ + float4 aaa[3] = + { + 11, {{{12, {13}}, 14}, + 21, 22}, 23, {{24, + 31, {32, 33}, 34}}, + }; + return aaa[1]; +} + +[test] +draw quad +probe all rgba (21, 22, 23, 24) + + +[pixel shader] +struct stu1 +{ + float4 aaa; + float4 bbb; +}; + +struct stu2 +{ + int3 ccc; + stu1 ddd; +}; + +float4 main() : sv_target +{ + struct stu2 val = + { + 11, {12, 13, + 21, {{{22}}}, 23}, {{24, + 31, 32}}, 33, 34, + }; + return val.ddd.aaa; +} + +[test] +draw quad +probe all rgba (21, 22, 23, 24)