mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-20 22:08:10 +02:00
With the pass order shuffling, code like `(x & 0xf) + (x & 0xfffffff0)` gets optimized to bitfield_select(0xF, x, x). But it would be much better to optimize simply to x. nir_opt_algebraic would do that for us but we run this pass too late for algebraic to save us from ourselves, so be smarter. Observed on dEQP-GLES31.functional.compute.basic.image_atomic_op_local_size_8 with Jay, this saves an instruction there. Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com> Reviewed-by: Daniel Schürmann <daniel@schuermann.dev> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40956> |
||
|---|---|---|
| .. | ||
| clc | ||
| glsl | ||
| isaspec | ||
| libcl | ||
| nir | ||
| rust | ||
| spirv | ||
| builtin_types.py | ||
| builtin_types_c.py | ||
| builtin_types_h.py | ||
| glsl_types.c | ||
| glsl_types.h | ||
| list.h | ||
| meson.build | ||
| shader_enums.c | ||
| shader_enums.h | ||
| shader_info.h | ||