Skip to content

nir: Clean up nir_op_is_vec() and its callers

Faith Ekstrand requested to merge gfxstrand/mesa:nir/op-is-vec into main

The nir_op_is_vec() helper I added in 842338e2 ("nir: Add a nir_op_is_vec helper") treats nir_op_mov as a vec even though the semanitcs of the two are different. In retrospect, this was a mistake as the three fixup commits show. This MR splits the helper into two: nir_op_is_vec() and nir_op_is_vec_or_mov() and uses the appropriate helper at each call site. Hopefully, this rename will encurage any future users of these helpers to think about nir_op_mov as separate from nir_op_vecN and we can avoid these bugs. break. Just check the things and break if it's not a handleable case.

Merge request reports