mesa/src/freedreno
Karol Herbst ee57c9df39 nir: rework and fix rotate lowering
No driver supports urol/uror on all bit sizes. Intel gen11+ only for 16
and 32 bit, Nvidia GV100+ only for 32 bit. Etnaviv can support it on 8,
16 and 32 bit.

Also turn the `lower` into a `has` option as only two drivers actually
support `uror` and `urol` at this momemt.

Fixes crashes with CL integer_rotate on iris and nouveau since we emit
urol for `rotate`.

v2: always lower 64 bit

Fixes: fe0965afa6 ("spirv: Don't use libclc for rotate")
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by (Intel and nir): Ian Romanick <ian.d.romanick@intel.com>

Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Acked-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27090>
(cherry picked from commit f2b7c4ce29)
2024-01-23 20:34:30 +00:00
..
.gitlab-ci freedreno/afuc: Decode (sdsN) modifier 2023-12-18 17:01:35 +00:00
afuc freedreno/afuc: Fix gen autodetection for a7xx 2023-12-18 17:01:35 +00:00
ci ci/deqp: uprev deqp-runner for Linux too to 0.18.0 2024-01-17 23:29:18 +00:00
common freedreno/drm/virtio: Fix typo 2024-01-03 22:28:41 +00:00
computerator freedreno,tu: Add env vars to modify fd_dev_info 2023-11-21 01:33:01 +00:00
decode freedreno/rddecompiler: Add ability to read GPU buffer into file 2024-01-01 18:47:48 +00:00
drm freedreno/drm: don't crash in heap allocator when run under valgrind 2024-01-04 03:17:46 +00:00
drm-shim freedreno: decouple compiler and vulkan driver from gallium 2023-08-03 07:29:36 +00:00
ds freedreno,tu: Add env vars to modify fd_dev_info 2023-11-21 01:33:01 +00:00
fdl freedreno/layout: Add layout metadata 2023-12-22 04:01:12 +00:00
ir2 freedreno/ir2: Re-indent 2021-04-17 15:38:56 +00:00
ir3 nir: rework and fix rotate lowering 2024-01-23 20:34:30 +00:00
isa ir3: Fix values of #wrmask not being compatible with ir3 parser 2023-10-11 18:35:32 +00:00
perfcntrs freedreno,tu: Add env vars to modify fd_dev_info 2023-11-21 01:33:01 +00:00
registers freedreno/devices: Update a690 magic regs from WSL blob 2024-01-03 17:35:07 +00:00
rnn freedreno/rnn: Remove %n usage in fprintf 2023-09-13 22:20:13 +00:00
vulkan turnip: Disable UBWC for D/S images on A690 2024-01-03 17:35:07 +00:00
.clang-format clang-format: Disable formatting by default 2023-08-13 16:48:49 +02:00
.dir-locals.el freedreno: Update editorconfig and emacs settings for freedreno reformat. 2021-05-10 23:16:00 +00:00
.editorconfig freedreno: Update editorconfig and emacs settings for freedreno reformat. 2021-05-10 23:16:00 +00:00
meson.build meson: use allow_fallback instead of manually listing the deps and what they provide 2023-12-28 13:17:25 +00:00