mesa/src
Kenneth Graunke cb756ae8a2 brw: Don't rely on SIMD splitting in opt_combine_convergent_txfs
The SIMD splitting pass does not handle wide force_writemask_all
instructions correctly at the moment.  For example, a SIMD32 TXF
on pre-Xe2 would get split to a pair of SIMD16.  But it will set
the groups to operate on channels 15:0 and 31:16.  That's not what
we want for a NoMask instruction - both should be 15:0, i.e.
bld.group(inst->exec_size, 0).

We could (and perhaps should) fix the SIMD splitting pass to handle
this, but the pass already has subtle complexity in which builders
are used.  Or we could alter fs_builder::group(), but that has broader
implications.  As a stop-gap, just make opt_combine_covergent_txfs stop
relying on SIMD splitting.  It's trivial to do and fixes the issue
without risking other breakage.

Fixes: 6341b3cd87 ("brw: Combine convergent texture buffer fetches into fewer loads")
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32714>
2024-12-19 23:16:12 +00:00
..
amd radv: use vk_descriptor_type_is_dynamic 2024-12-19 15:12:58 +00:00
android_stub
asahi asahi: use vk_descriptor_type_is_dynamic 2024-12-19 15:12:58 +00:00
broadcom v3dv: use vk_descriptor_type_is_dynamic 2024-12-19 15:12:58 +00:00
c11
compiler pan,nir: introduce load_attribute_pan 2024-12-18 08:33:16 +00:00
drm-shim
egl egl/wayland: fallback to implicit modifiers if advertised by compositor 2024-12-19 13:09:48 +00:00
etnaviv etnaviv: Update headers from rnndb 2024-12-18 12:42:37 +00:00
freedreno ir3,freedreno: remove binning outputs after vs ucp lowering 2024-12-19 17:32:26 +00:00
gallium iris: Check that mem_fence_bo was created 2024-12-19 08:54:00 -08:00
gbm Revert "gbm: mark surface buffers as explicit flushed" 2024-11-27 22:48:04 +00:00
getopt
gfxstream gfxstream: fix issues with VK1.4 build 2024-12-03 20:35:44 +00:00
glx glx: ignore zink check for has_explicit_modifiers and DRI3 on MacOS. 2024-12-13 00:39:16 +00:00
gtest
imagination pvr: use vk_descriptor_type_is_dynamic 2024-12-19 15:12:58 +00:00
imgui
intel brw: Don't rely on SIMD splitting in opt_combine_convergent_txfs 2024-12-19 23:16:12 +00:00
loader loader: Fix typo in __DRI_IMAGE_FORMAT_XBGR16161616 definition 2024-10-25 14:18:24 +00:00
mapi meson: remove selinux option 2024-10-21 01:14:35 +00:00
mesa st/mesa: document ARB_texture_float quirk 2024-12-18 11:42:20 +00:00
microsoft dozen: use vk_descriptor_type_is_dynamic 2024-12-19 15:12:58 +00:00
nouveau nvk: use vk_descriptor_type_is_dynamic 2024-12-19 15:12:58 +00:00
panfrost panvk: silence a perfetto init warning 2024-12-19 19:00:13 +00:00
tool panvk: add u_trace perfetto support 2024-12-17 23:14:26 +00:00
util anv: remove unnecessary driconf entries for anv_enable_buffer_comp 2024-12-18 21:02:19 +00:00
virtio treewide: Stop putting enum in front of Vulkan enum types 2024-12-02 17:22:49 +00:00
vulkan vulkan: add vk_descriptor_type_is_dynamic helper 2024-12-19 15:12:58 +00:00
x11 meson: require dri3 modifiers 2024-09-06 17:34:17 +00:00
.clang-format nir: add helpers for precompiled shaders 2024-11-28 17:34:12 +00:00
meson.build meson: simplify logic a bit 2024-11-26 20:45:41 +00:00