Zebediah Figura : tests: Test casts to int.

Alexandre Julliard julliard at winehq.org
Wed Sep 15 16:20:12 CDT 2021


Module: vkd3d
Branch: master
Commit: d9eee8f24a150233604e9146fa7ec5533352ac96
URL:    https://source.winehq.org/git/vkd3d.git/?a=commit;h=d9eee8f24a150233604e9146fa7ec5533352ac96

Author: Zebediah Figura <zfigura at codeweavers.com>
Date:   Thu Sep  9 21:11:34 2021 -0500

tests: Test casts to int.

Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
Signed-off-by: Giovanni Mascellani <gmascellani at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 Makefile.am                   |  2 ++
 tests/cast-to-int.shader_test | 41 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 43 insertions(+)

diff --git a/Makefile.am b/Makefile.am
index a1b6eb3..da57a68 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -56,6 +56,7 @@ vkd3d_shader_runners = \
 vkd3d_shader_tests = \
 	tests/cast-to-float.shader_test \
 	tests/cast-to-half.shader_test \
+	tests/cast-to-int.shader_test \
 	tests/conditional.shader_test \
 	tests/hlsl-array-dimension.shader_test \
 	tests/hlsl-bool-cast.shader_test \
@@ -270,6 +271,7 @@ SHADER_TEST_LOG_COMPILER = tests/shader_runner_d3d12
 XFAIL_TESTS = \
 	tests/cast-to-float.shader_test \
 	tests/cast-to-half.shader_test \
+	tests/cast-to-int.shader_test \
 	tests/conditional.shader_test \
 	tests/hlsl-array-dimension.shader_test \
 	tests/hlsl-bool-cast.shader_test \
diff --git a/tests/cast-to-int.shader_test b/tests/cast-to-int.shader_test
new file mode 100644
index 0000000..c7d1e23
--- /dev/null
+++ b/tests/cast-to-int.shader_test
@@ -0,0 +1,41 @@
+[pixel shader]
+
+float4 main(uniform float f, uniform uint u, uniform bool b, uniform half h) : sv_target
+{
+    float4 ret;
+
+    ret.x = ((float)(int)f) - 1.5;
+    ret.y = ((float)(int)u) + 2.5;
+    ret.z = ((float)(int)b) / 2;
+    ret.w = ((float)(int)h) + 3.5;
+    return ret;
+}
+
+[test]
+uniform 0 float 2.6
+uniform 1 int -2
+uniform 2 int -2
+uniform 3 float -3.6
+draw quad
+probe all rgba (0.5, 0.5, 0.5, 0.5)
+
+[pixel shader]
+
+float4 main() : sv_target
+{
+    float f = 2.6;
+    uint u = 0xfffffffe;
+    bool b = true;
+    half h = -3.6;
+    float4 ret;
+
+    ret.x = ((float)(int)f) - 1.5;
+    ret.y = ((float)(int)u) + 2.5;
+    ret.z = ((float)(int)b) / 2;
+    ret.w = ((float)(int)h) + 3.5;
+    return ret;
+}
+
+[test]
+draw quad
+probe all rgba (0.5, 0.5, 0.5, 0.5)




More information about the wine-cvs mailing list