For the series: Reviewed-by: Chris Forbes <[email protected]>
On Wed, Mar 18, 2015 at 10:51 AM, Ian Romanick <[email protected]> wrote: > From: Ian Romanick <[email protected]> > > These patterns > > gl_FrontFacing ? -1.0 : 1.0 > gl_FrontFacing ? 1.0 : -1.0 > gl_FrontFacing ? 0.0 : -1.0 > > are recognized and optimized by the i965 driver. However, it > incorrectly optimizes > > int x = gl_FrontFacing ? 1 : -1; > > as > > int x = gl_FrontFacing ? floatBitsToInt(1.0) : floatBitsToInt(-1.0); > > NOTE: This test currently fails on Mesa master and 10.5 branches. > > v2: Add missing ] on vertex passthrough line. Noticed by Emil. > > Signed-off-by: Ian Romanick <[email protected]> > --- > .../fs-frontfacing-ternary-1-neg-1.shader_test | 32 > ++++++++++++++++++++++ > 1 file changed, 32 insertions(+) > create mode 100644 > tests/spec/glsl-1.10/execution/fs-frontfacing-ternary-1-neg-1.shader_test > > diff --git > a/tests/spec/glsl-1.10/execution/fs-frontfacing-ternary-1-neg-1.shader_test > b/tests/spec/glsl-1.10/execution/fs-frontfacing-ternary-1-neg-1.shader_test > new file mode 100644 > index 0000000..a6590c1 > --- /dev/null > +++ > b/tests/spec/glsl-1.10/execution/fs-frontfacing-ternary-1-neg-1.shader_test > @@ -0,0 +1,32 @@ > +[require] > +GLSL >= 1.10 > + > +[vertex shader passthrough] > + > +[fragment shader] > +uniform int front; > +uniform int back; > + > +const vec4 c = vec4(1.0, 0.0, 0.0, 0.0); > +void main() > +{ > + int f = gl_FrontFacing ? 1 : -1; > + if (f == front) { > + gl_FragColor = c.yxyx; > + } else if (f == back) { > + gl_FragColor = c.yyxx; > + } else { > + gl_FragColor = c.xyyx; > + } > +} > + > +[test] > +uniform int front 1 > +uniform int back -1 > + > +draw rect -1 -1 2 1 > +draw rect 1 0 -2 1 > +relative probe rgba (0, 0) (0.0, 1.0, 0.0, 1.0) > +relative probe rgba (1, 0) (0.0, 1.0, 0.0, 1.0) > +relative probe rgba (0, 1) (0.0, 0.0, 1.0, 1.0) > +relative probe rgba (1, 1) (0.0, 0.0, 1.0, 1.0) > -- > 2.1.0 > > _______________________________________________ > Piglit mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/piglit _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
