mesa/src/microsoft
Karol Herbst 08229beb4e 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:52:01 +00:00
..
ci ci: skip dEQP-VK.api.driver_properties.conformance_version for everyone 2023-10-06 17:37:20 +00:00
clc nir: Use getters for nir_src::parent_* 2023-10-10 04:58:05 -04:00
compiler nir: rework and fix rotate lowering 2024-01-23 20:52:01 +00:00
spirv_to_dxil meson: Remove unnecessary inc_compiler mentions 2023-09-22 14:52:50 +00:00
vulkan dzn: Fixes -Werror=incompatible-pointer-type 2023-12-17 23:48:00 +00:00
meson.build d3d12: Move the D3D12ResourceState code to the gallium driver 2022-04-20 23:45:28 -07:00