diff --git a/Makefile.am b/Makefile.am index 14b5cf09..00274682 100644 --- a/Makefile.am +++ b/Makefile.am @@ -69,6 +69,7 @@ vkd3d_shader_tests = \ tests/hlsl/cast-to-int.shader_test \ tests/hlsl/cast-to-uint.shader_test \ tests/hlsl/cbuffer.shader_test \ + tests/hlsl/ceil.shader_test \ tests/hlsl/clamp.shader_test \ tests/hlsl/clip.shader_test \ tests/hlsl/combined-samplers.shader_test \ diff --git a/tests/hlsl/ceil.shader_test b/tests/hlsl/ceil.shader_test new file mode 100644 index 00000000..266a63db --- /dev/null +++ b/tests/hlsl/ceil.shader_test @@ -0,0 +1,57 @@ +[pixel shader todo] +float4 main() : sv_target +{ + return ceil(float4(-0.5, 6.5, 7.5, 3.4)); +} + +[test] +todo(sm<6) draw quad +todo(sm<6) probe all rgba (0.0, 7.0, 8.0, 4.0) 4 + +[pixel shader todo] +uniform float4 u; + +float4 main() : sv_target +{ + return ceil(u); +} + +[test] +uniform 0 float4 -0.5 6.5 7.5 3.4 +todo draw quad +todo probe all rgba (0.0, 7.0, 8.0, 4.0) 4 + +[pixel shader todo] +uniform float4 u; + +float4 main() : sv_target +{ + float a = ceil(u.r); + int2 b = ceil(u.gb); + float4 res = float4(b, a, u.a); + return ceil(res); +} + +[test] +uniform 0 float4 -0.5 6.5 7.5 3.4 +todo draw quad +todo probe all rgba (7.0, 8.0, 0.0, 4.0) 4 + +[require] +shader model >= 4.0 + +[pixel shader todo] +uniform int4 u; + +float4 main() : sv_target +{ + float a = ceil(u.r); + int2 b = ceil(u.gb); + float4 res = float4(b, a, u.a); + return ceil(res); +} + +[test] +uniform 0 int4 -1 6 7 3 +todo draw quad +todo probe all rgba (6.0, 7.0, -1.0, 3.0) 4