mesa/src
Ian Romanick db6d1edc1b nir: Restrict ufind_msb and ufind_msb_rev to 32- or 64-bit sources
4d802df3aa loosened the type restrictions
on these opcodes to enable support for 64-bit ballot operations.  In
doing so, it enabled 8-bit and 16-bit sizes as well.

It's impossible to get these sizes through GLSL or SPIR-V.  None of the
lowering in nir_opt_algebraic can handle non-32-bit sizes.  Almost no
drivers can handle non-32-bit sizes.

It doesn't seem possible to enforce anything other than "one bit size"
or "all bit sizes" in nir_opcodes.py.  The only way it seems possible to
enforce this is in nir_validate.  This is not ideal, but it be what it
be.

v2: Remove restriction on find_lsb. It is acutally possible to get this
via GLSL by doing findLSB() on a lowp value. findMSB declares its
parameter as highp, so that path is still impossible.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19042>
2023-03-10 15:27:17 +00:00
..
amd radv: set RADEON_FLAG_GTT_WC for external mem on vram 2023-03-09 22:21:09 +00:00
android_stub util/log: improve logger_android 2023-02-22 17:55:40 +00:00
asahi agx: Handle indirect texture/samplers 2023-03-10 14:14:42 +00:00
broadcom v3dv: split out broadcom_shader_stage_to_gl() calls to improve readability 2023-03-10 10:38:43 +00:00
c11 c11: Remove _MTX_INITIALIZER_NP for windows 2022-11-09 04:38:28 +00:00
compiler nir: Restrict ufind_msb and ufind_msb_rev to 32- or 64-bit sources 2023-03-10 15:27:17 +00:00
drm-shim drm-shim: Use hide_drm_device_path() to hide other drm devices 2022-12-30 15:51:11 -08:00
egl egl/wayland: Fix destruction of event queue with proxies still attached. 2023-03-02 18:32:02 +00:00
etnaviv ci/etnaviv: Drop the dEQP-GLES2.functional.uniform_api.random.94 xfail. 2023-03-07 21:03:33 +00:00
freedreno ci/fdno: Add a618 Vulkan flakes 2023-03-09 14:47:57 +00:00
gallium zink: fix stipple pattern in oblique lines 2023-03-10 14:52:01 +00:00
gbm gbm: drop unnecessary vulkan dependency 2023-02-23 18:31:22 +00:00
getopt
glx meson: inline gtest_test_protocol now that it's always 'gtest' 2023-03-10 07:20:29 +00:00
gtest
imagination pvr: Advertise STORAGE_IMAGE_BIT for B10G11R11_UFLOAT_PACK32 2023-03-02 16:33:53 +00:00
imgui
intel nir: intel/compiler: Move ufind_msb lowering to NIR 2023-03-10 15:27:17 +00:00
loader loader: Use libdrm shim 2023-03-05 16:31:51 +00:00
mapi meson: inline gtest_test_protocol now that it's always 'gtest' 2023-03-10 07:20:29 +00:00
mesa meson: inline gtest_test_protocol now that it's always 'gtest' 2023-03-10 07:20:29 +00:00
microsoft meson: inline gtest_test_protocol now that it's always 'gtest' 2023-03-10 07:20:29 +00:00
nouveau nir: add assertions that loops don't have a Continue Construct 2023-02-21 10:41:11 +00:00
panfrost meson: inline gtest_test_protocol now that it's always 'gtest' 2023-03-10 07:20:29 +00:00
tool tool/pps: Fix 32-bit build issue with format string 2023-01-18 19:27:41 +00:00
util meson: inline gtest_test_protocol now that it's always 'gtest' 2023-03-10 07:20:29 +00:00
virtio Revert "Revert "ci: disable mesa-swrast runner jobs"" 2023-03-10 12:37:56 +00:00
vulkan vulkan/wsi: fix crash in failed swapchain creation for wayland 2023-03-08 17:33:00 +00:00
meson.build hgl: remove 2023-02-18 00:44:43 +00:00