intel/fs: Take into account region strides during SIMD lowering decision of SHUFFLE.
authorFrancisco Jerez <currojerez@riseup.net>
Mon, 20 Dec 2021 09:54:57 +0000 (01:54 -0800)
committerMarge Bot <emma+marge@anholt.net>
Tue, 25 Jan 2022 22:40:44 +0000 (22:40 +0000)
commitd1038197f31041f0ff5712bf92be63d34fb883e2
tree6f0b47d3931a09a9c4b79f4acaf1b916e650a18d
parent44e48751d2451662796983e61f85f68f4ec597e5
intel/fs: Take into account region strides during SIMD lowering decision of SHUFFLE.

This fixes a bug in the handcrafted SIMD lowering done by the SHUFFLE
code generation, which wasn't taking into account the source and
destination region strides while deciding whether it needs to split an
instruction.

v2: Use new element_sz() helper instead of left shift. (Lionel)

Fixes: 90c9f29518d ("i965/fs: Add support for nir_intrinsic_shuffle")
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14273>
src/intel/compiler/brw_fs_generator.cpp
src/intel/compiler/brw_reg.h