[PATCH vkd3d v3 5/6] tests: Test implicit conversions for return statements.

Giovanni Mascellani gmascellani at codeweavers.com
Mon Oct 25 02:06:29 CDT 2021


Signed-off-by: Giovanni Mascellani <gmascellani at codeweavers.com>
---
 ...lsl-return-implicit-conversion.shader_test | 235 ++++++++++++++++++
 1 file changed, 235 insertions(+)

diff --git a/tests/hlsl-return-implicit-conversion.shader_test b/tests/hlsl-return-implicit-conversion.shader_test
index 527387b3..654b51cf 100644
--- a/tests/hlsl-return-implicit-conversion.shader_test
+++ b/tests/hlsl-return-implicit-conversion.shader_test
@@ -7,3 +7,238 @@ float4 main() : sv_target
 [test]
 draw quad
 probe all rgba (0.4, 0.3, 0.2, 0.1)
+
+[pixel shader]
+float4 main() : sv_target
+{
+    return float1x4(0.4, 0.3, 0.2, 0.1);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.1)
+
+[pixel shader]
+float4 main() : sv_target
+{
+    return float4x1(0.4, 0.3, 0.2, 0.1);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.1)
+
+[pixel shader]
+float4x1 main() : sv_target
+{
+    return float4(0.4, 0.3, 0.2, 0.1);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.1)
+
+[pixel shader]
+float3 func()
+{
+    return float3x1(0.4, 0.3, 0.2);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.0)
+
+[pixel shader]
+float3 func()
+{
+    return float1x3(0.4, 0.3, 0.2);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.0)
+
+[pixel shader]
+float1x3 func()
+{
+    return float3(0.4, 0.3, 0.2);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.0)
+
+[pixel shader]
+float3x1 func()
+{
+    return float3(0.4, 0.3, 0.2);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.0)
+
+[pixel shader fail]
+float3x1 func()
+{
+    return float1x3(0.4, 0.3, 0.2);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[pixel shader fail]
+float1x3 func()
+{
+    return float3x1(0.4, 0.3, 0.2);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[pixel shader]
+float3 func()
+{
+    return float4(0.4, 0.3, 0.2, 0.1);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.0)
+
+[pixel shader]
+float3 func()
+{
+    return float4x1(0.4, 0.3, 0.2, 0.1);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.0)
+
+[pixel shader]
+float3 func()
+{
+    return float1x4(0.4, 0.3, 0.2, 0.1);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.0)
+
+[pixel shader fail]
+float3x1 func()
+{
+    return float4(0.4, 0.3, 0.2, 0.1);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[pixel shader]
+float3x1 func()
+{
+    return float4x1(0.4, 0.3, 0.2, 0.1);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.0)
+
+[pixel shader fail]
+float3x1 func()
+{
+    return float1x4(0.4, 0.3, 0.2, 0.1);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[pixel shader]
+float1x3 func()
+{
+    return float4(0.4, 0.3, 0.2, 0.1);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.0)
+
+[pixel shader fail]
+float1x3 func()
+{
+    return float4x1(0.4, 0.3, 0.2, 0.1);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[pixel shader]
+float1x3 func()
+{
+    return float1x4(0.4, 0.3, 0.2, 0.1);
+}
+
+float4 main() : sv_target
+{
+    return float4(func(), 0.0);
+}
+
+[test]
+draw quad
+probe all rgba (0.4, 0.3, 0.2, 0.0)
-- 
2.33.0




More information about the wine-devel mailing list