From: Francisco Casas fcasas@codeweavers.com
--- tests/swizzles.shader_test | 37 +++++++++++++++++++++++++++++++++++-- 1 file changed, 35 insertions(+), 2 deletions(-)
diff --git a/tests/swizzles.shader_test b/tests/swizzles.shader_test index 1929bfc6..c3d3343f 100644 --- a/tests/swizzles.shader_test +++ b/tests/swizzles.shader_test @@ -116,7 +116,7 @@ float4 main() : sv_target { float f = 20;
- return f.x.x; + return f.x.x; }
[test] @@ -129,9 +129,42 @@ float4 main() : sv_target { float f = 3;
- return float4(1, 2, f.x.xx); + return float4(1, 2, f.x.xx); }
[test] draw quad probe all rgba (1.0, 2.0, 3.0, 3.0) + + +[pixel shader] +uniform float4 color; + +float4 main() : sv_target +{ + float4 ret = color; + ret.xyzw = ret.xyzw; // Assignment to self. + return ret; +} + +[test] +uniform 0 float4 1.0 2.0 3.0 4.0 +draw quad +probe all rgba (1.0, 2.0, 3.0, 4.0) + + +[pixel shader] +uniform float4 color; + +float4 main() : sv_target +{ + float4 ret = color; + ret.xyzw = ret.wxyz; // Assignment to self, shifted. + ret.xy = ret.yx; + return ret; +} + +[test] +uniform 0 float4 1.0 2.0 3.0 4.0 +draw quad +probe all rgba (1.0, 4.0, 2.0, 3.0)