mesa/src
Ian Romanick 6fab1b77c2 brw/nir: Treat some load_uniform as convergent
No shader-db changes on any Intel platform.

v2: Fix for Xe2.

v3: Rework the way that we determine that an intrinsic can actually be
convergent. This will now depend on whether or not the important
sources have previously be determined to be convergent. Fixes
intermitent failures in some test cases (including
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.push_constant_float_16_to_32.scalar_frag).

v4: s/the it/it/ in a comment. Noticed by Ken.

fossil-db:

No fossil-db changes on Lunar Lake.

Meteor Lake and DG2 had similar results. (Meteor Lake shown)
Totals:
Instrs: 152743449 -> 152743161 (-0.00%)
Cycle count: 17399179660 -> 17399193488 (+0.00%)

Totals from 144 (0.02% of 633314) affected shaders:
Instrs: 5936 -> 5648 (-4.85%)
Cycle count: 51616 -> 65444 (+26.79%)

Tiger Lake, Ice Lake, and Skylake had similar results. (Tiger Lake shown)
Totals:
Instrs: 150646195 -> 150645907 (-0.00%)
Cycle count: 15618427818 -> 15618428942 (+0.00%)

Totals from 144 (0.02% of 632567) affected shaders:
Instrs: 6218 -> 5930 (-4.63%)
Cycle count: 39968 -> 41092 (+2.81%)

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29884>
2024-12-24 18:09:59 -08:00
..
amd radeonsi,radv: fix incorrect min_esverts for NGG subgroup calculation 2024-12-24 12:02:20 +00:00
android_stub
asahi asahi: Remove unneeded dependencies for asahi_clc 2024-12-23 15:09:41 +00:00
broadcom ci: update fail lists and trace checksums 2024-12-24 05:54:07 -05:00
c11
compiler radeonsi: implement nir_opt_frag_depth using kill_z instead of the NIR pass 2024-12-24 12:02:20 +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 ci: update fail lists and trace checksums 2024-12-24 05:54:07 -05:00
gallium radeonsi,radv: fix incorrect min_esverts for NGG subgroup calculation 2024-12-24 12:02:20 +00: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/nir: Treat some load_uniform as convergent 2024-12-24 18:09:59 -08: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 glsl,st/mesa: always lower IO for GLSL, unlower IO for drivers 2024-12-24 05:54:07 -05:00
microsoft microsoft/compiler: Update clip/cull split pass to handle clip/cull getting merged 2024-12-24 05:54:07 -05:00
nouveau nak: Simplify 16-bit vector selection to not use try_from 2024-12-23 11:47:49 +01:00
panfrost ci: update fail lists and trace checksums 2024-12-24 05:54:07 -05:00
tool panvk: add u_trace perfetto support 2024-12-17 23:14:26 +00:00
util drirc/nvk: force_vk_vendor=-1 for Artifact Classic 2024-12-23 16:12:35 +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