Skip to content

nir: add a nir_opt_peephole_select_extended pass to allow UBO and TEX and use it in r600

What does this MR do and why?

The MR adds a nir_opt_peephole_select_extended pass to allow also some UBO loads and TEX loads when doing the peephole select optimization.

nir_opt_peephole_select is kept intact and just forwards to nir_opt_peephole_select_extended

This is of interest because UBO loads with constant offsets can be handled in ALU with r600, and for the TEX opts we can reduce the number of CFs for the pattern

   if cond
      r1 = TEX ...
   else
      r1 = const
   fi

Merge request reports