diff options
author | Matt Turner <mattst88@gmail.com> | 2013-09-25 22:49:21 -0700 |
---|---|---|
committer | Matt Turner <mattst88@gmail.com> | 2013-09-25 22:56:58 -0700 |
commit | 18f47746028bded0c393dbf0baf8319037569669 (patch) | |
tree | a4c2a7b6f92e66245ea2c903580ff5cebd621414 | |
parent | 012b030b19791d90908e5d88770d6528b11b742b (diff) |
arb_gpu_shader5: Test using only the msb from imulExtended in the vs.arb_gpu_shader5
-rw-r--r-- | tests/spec/arb_gpu_shader5/execution/built-in-functions/vs-imulExtended-only-msb.shader_test | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/tests/spec/arb_gpu_shader5/execution/built-in-functions/vs-imulExtended-only-msb.shader_test b/tests/spec/arb_gpu_shader5/execution/built-in-functions/vs-imulExtended-only-msb.shader_test new file mode 100644 index 000000000..f608cf18c --- /dev/null +++ b/tests/spec/arb_gpu_shader5/execution/built-in-functions/vs-imulExtended-only-msb.shader_test @@ -0,0 +1,48 @@ +[require] +GLSL >= 1.50 +GL_ARB_gpu_shader5 + +[vertex shader] +#extension GL_ARB_gpu_shader5 : enable + +in vec4 piglit_vertex; +out vec4 color; + +uniform ivec4 x, y; +uniform ivec4 expected_msb; + + +void main() +{ + gl_Position = piglit_vertex; + + color = vec4(0.0, 1.0, 0.0, 1.0); + + ivec4 msb, lsb; + imulExtended(x, y, msb, lsb); + + if (msb != expected_msb) + color.r = 1.0; +} + +[fragment shader] +in vec4 color; +out vec4 frag_color; + +void main() +{ + frag_color = color; +} + +[test] +uniform ivec4 x 1 1 1 1 +uniform ivec4 y 1 2 3 4 +uniform ivec4 expected_msb 0 0 0 0 +draw rect -1 -1 2 2 +probe all rgba 0.0 1.0 0.0 1.0 + +uniform ivec4 x -1 2 -131072 -131073 +uniform ivec4 y 1 -2 131072 131073 +uniform ivec4 expected_msb -1 -1 4294967292 4294967291 +draw rect -1 -1 2 2 +probe all rgba 0.0 1.0 0.0 1.0 |