On Wed, 2015-11-25 at 16:16 -0800, Matt Turner wrote: > In the piglit test you cited, opt_vector_float() does this to the > relevant code: > > cmp.nz.f0.0 null:F, vgrf6.xyzz:F, vgrf14.xyzz:F > -mov vgrf2.0.x:D, 0D > (+f0.0.any4h) mov vgrf2.0.x:D, -1D > -mov vgrf2.0.yzw:D, 0D > +mov vgrf2.0:F, [0F, 0F, 0F, 0F] > cmp.nz.f0.0 null:D, vgrf2.xyzw:D, 0D >
Now that you point to this change, is it correct? Before the change, vgrf2.0.x is initialized to 0, and if the previous cmp success then assigned -1. But after the change, the value is initialized to 0 *after* the conditional check, so it ends up always with 0 (-1D is never assigned). So seems opt_vector_float() is doing something wrong (probably not checking if the component can be assigned in a conditional). Am I missing something? J.A. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev