ac/llvm: Fix ac_build_buffer_load to work with more than 4 channels.
authorTimur Kristóf <timur.kristof@gmail.com>
Mon, 13 Feb 2023 11:14:04 +0000 (12:14 +0100)
committerMarge Bot <emma+marge@anholt.net>
Thu, 16 Feb 2023 15:29:37 +0000 (15:29 +0000)
commit0ae778ca59a75b883cfc04c8a2cf62169381f734
tree258e30273f85dbd6d2c3b988211e373d90105103
parenta2755fc203fa62f48bc3547c5493f959dd300726
ac/llvm: Fix ac_build_buffer_load to work with more than 4 channels.

LLVM is unable to select instructions for num_channels > 4, so we
workaround that by manually splitting larger buffer loads.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Qiang Yu <yuq825@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21358>
src/amd/llvm/ac_llvm_build.c