Looks good. Thanks Roland. Jose
----- Original Message ----- > From: Roland Scheidegger <srol...@vmware.com> > > Similar to glsl-fs-main-return (and glsl-vs-main-return), this is testing > using return in main. Contrary to the these other tests, this hits both > the cases where the return path is and is NOT taken (the gallivm code > got it wrong and always did an early exit which got unnoticed by the > existing tests, see https://bugs.freedesktop.org/show_bug.cgi?id=62357). > > v2: use mod() instead of integer arithmetic suggested by Ian Romanick. > This gets rid of the glsl 1.30 requirement. And do minor simplifications. > --- > .../glsl-fs-main-return-conditional.shader_test | 28 > ++++++++++++++++++++ > 1 file changed, 28 insertions(+) > create mode 100644 tests/shaders/glsl-fs-main-return-conditional.shader_test > > diff --git a/tests/shaders/glsl-fs-main-return-conditional.shader_test > b/tests/shaders/glsl-fs-main-return-conditional.shader_test > new file mode 100644 > index 0000000..173ae03 > --- /dev/null > +++ b/tests/shaders/glsl-fs-main-return-conditional.shader_test > @@ -0,0 +1,28 @@ > +[require] > +GLSL >= 1.10 > + > +[vertex shader] > +void main() > +{ > + gl_Position = gl_Vertex; > +} > + > +[fragment shader] > +const vec4 v = vec4(0., 1., 0., 1.); > + > +void main() > +{ > + gl_FragColor = v; > + if (mod(gl_FragCoord.x, 2.0) >= 1.0) > + return; // return for every second pixel > + > + gl_FragColor = vec4(1.0) - v; > +} > + > +[test] > +draw rect -1 -1 2 2 > +probe rgb 0 0 1 0 1 > +probe rgb 1 0 0 1 0 > +probe rgb 2 0 1 0 1 > +probe rgb 3 0 0 1 0 > + > -- > 1.7.9.5 > _______________________________________________ Piglit mailing list Piglit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/piglit