glsl: Drop borrow/carry lowerings in favor of nir
authorM Henning <drawoc@darkrefraction.com>
Sat, 12 Nov 2022 20:53:30 +0000 (15:53 -0500)
committerMarge Bot <emma+marge@anholt.net>
Tue, 15 Nov 2022 21:51:04 +0000 (21:51 +0000)
commitf3ee9be836bf3d00a51f6b58300c383c4d269309
tree92707ddba7a047601bb3661123f1f28f1672d6db
parent339d80d5f22c9f3af88da574edf27bf244ded752
glsl: Drop borrow/carry lowerings in favor of nir

Unconditionally lowering prevents GL drivers from natively
implementing these ops. Drivers that need lowering should set
lower_uadd_carry and lower_usub_borrow on nir_shader_compiler_options to
get the nir lowerings.

Tested with dEQP-GLES31.functional.shaders.builtin_functions.integer.*

Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19704>
src/compiler/glsl/lower_instructions.cpp
src/gallium/auxiliary/nir/nir_to_tgsi.c
src/gallium/drivers/etnaviv/etnaviv_compiler.c
src/gallium/drivers/r600/r600_pipe_common.c
src/gallium/drivers/zink/zink_compiler.c
src/microsoft/compiler/nir_to_dxil.c
src/panfrost/midgard/midgard_compile.h