Skip to content

etnaviv: Drop nir_lower_idiv lowering

Christian Gmeiner requested to merge austriancoder/mesa:idiv into main

Commit ab3a1d41 ("glsl: Drop INT_DIV_TO_MUL_RCP lowering.") introduced a regression in etnaviv where we would end in an assert in nir_lower_int_to_float(..) triggered by an unhalded ixor. That ixor gets created by nir_lower_idiv(..).

Commit 5c499d6d ("nir: Fix idiv lowering on !NativeIntegers when lower_fdiv is also set.") prepared nir_lower_int_to_float(..) to handle idiv for interger less GPUs.

Lets remove the not needed nir_lower_idiv(..) call as

  • idiv for non integer-able GPUs is handeld in nir_lower_int_to_float(..)
  • integer-able GPUs have support for idiv opcode

This fixes about 130 crashes seen on gc2000 deqp ci run.

Fixes: ab3a1d41 ("glsl: Drop INT_DIV_TO_MUL_RCP lowering.") Signed-off-by: Christian Gmeiner christian.gmeiner@gmail.com

Edited by Christian Gmeiner

Merge request reports