diff options
author | Matt Turner <mattst88@gmail.com> | 2013-09-17 23:25:22 -0700 |
---|---|---|
committer | Matt Turner <mattst88@gmail.com> | 2013-10-04 13:26:24 -0700 |
commit | 381879f80531486d30708093afb0b5d529fe58ec (patch) | |
tree | 723779e4d29385772c7295f7800ff4ed953a9d97 | |
parent | 0cea4615dcc03749075c9f2898c7fa4c863d87ea (diff) |
arb_gpu_shader5: Add usubBorrow fragment shader execution test.
-rw-r--r-- | tests/spec/arb_gpu_shader5/execution/built-in-functions/fs-usubBorrow.shader_test | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/tests/spec/arb_gpu_shader5/execution/built-in-functions/fs-usubBorrow.shader_test b/tests/spec/arb_gpu_shader5/execution/built-in-functions/fs-usubBorrow.shader_test new file mode 100644 index 000000000..1fb4e6b06 --- /dev/null +++ b/tests/spec/arb_gpu_shader5/execution/built-in-functions/fs-usubBorrow.shader_test @@ -0,0 +1,48 @@ +[require] +GLSL >= 1.50 +GL_ARB_gpu_shader5 + +[vertex shader passthrough] + +[fragment shader] +#extension GL_ARB_gpu_shader5 : enable + +out vec4 frag_color; + +uniform uvec4 x, y; +uniform uvec4 expected_diff, expected_borrow; + +void main() +{ + frag_color = vec4(0.0, 1.0, 0.0, 1.0); + + uvec4 borrow; + uvec4 diff = usubBorrow(x, y, borrow); + + if (diff != expected_diff) + frag_color.r = 1.0; + if (borrow != expected_borrow) + frag_color.b = 1.0; +} + +[test] +uniform uvec4 x 1 2 3 4 +uniform uvec4 y 0 1 2 3 +uniform uvec4 expected_diff 1 1 1 1 +uniform uvec4 expected_borrow 0 0 0 0 +draw rect -1 -1 2 2 +probe all rgba 0.0 1.0 0.0 1.0 + +uniform uvec4 x 4 3 2 1 +uniform uvec4 y 4 4 4 4 +uniform uvec4 expected_diff 0 0xFFFFFFFF 0xFFFFFFFE 0xFFFFFFFD +uniform uvec4 expected_borrow 0 1 1 1 +draw rect -1 -1 2 2 +probe all rgba 0.0 1.0 0.0 1.0 + +uniform uvec4 x 0xFFFFFFFE 0xFFFFFFFF 0x80000000 0 +uniform uvec4 y 0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 0 +uniform uvec4 expected_diff 0xFFFFFFFF 0 0x80000001 0 +uniform uvec4 expected_borrow 1 0 1 0 +draw rect -1 -1 2 2 +probe all rgba 0.0 1.0 0.0 1.0 |