On Tue, Dec 1, 2015 at 11:07 AM, Ian Romanick <i...@freedesktop.org> wrote: > On 11/30/2015 03:32 PM, Matt Turner wrote: >> For a select whose condition is any(v), instead of emitting >> >> cmp.nz.f0(8) null<1>D g1<0,4,1>D 0D >> mov(8) g7<1>.xUD 0x00000000UD >> (+f0.any4h) mov(8) g7<1>.xUD 0xffffffffUD >> cmp.nz.f0(8) null<1>D g7<4,4,1>.xD 0D >> (+f0) sel(8) g8<1>UD g4<4,4,1>UD g3<4,4,1>UD >> >> we now emit >> >> cmp.nz.f0(8) null<1>D g1<0,4,1>D 0D >> (+f0.any4h) sel(8) g9<1>UD g4<4,4,1>UD g3<4,4,1>UD > > Any shaderdb changes? Don't be a tease!
Heh. Disappointingly no :( No vertex shaders we've collected use any() or all(). The good news is that running shader-db to confirm that result found two problems :) The first was caused by a mistake (I'll claim innocence and call it a typo ;) in 5/6, and the second is fixed by the patch I just sent ("nir: Optimize useless comparisons against true/false.") The other good news is that this ::optimize_predicate idea will extend well for the ARB_shader_group_vote predicates. Thanks for reviewing, Ian! _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev