mesa/src/nouveau
Karol Herbst 4cd64165a3 nak/lower_cf: remove single src phis
When lowering cf we go out of SSA which translates phis into reg
intrinsics. However when converting them back to SSA, initially single
source phis now have an undef source leading to increased register
pressure on the NAK side. This also hinders copy propagation as it's not
designed to handle sources through phis yet.

Totals from 50621 (4.17% of 1212873) affected shaders:
CodeSize: 1605273744 -> 1621029728 (+0.98%); split: -0.34%, +1.32%
Number of GPRs: 4673586 -> 4067935 (-12.96%); split: -12.97%, +0.01%
SLM Size: 263428 -> 258176 (-1.99%)
Static cycle count: 2599838439 -> 2586392435 (-0.52%); split: -1.11%, +0.59%
Spills to memory: 23512 -> 15527 (-33.96%)
Fills from memory: 23512 -> 15527 (-33.96%)
Spills to reg: 64590 -> 57328 (-11.24%); split: -13.83%, +2.58%
Fills from reg: 55559 -> 44319 (-20.23%); split: -22.66%, +2.42%
Max warps/SM: 1189396 -> 1347600 (+13.30%)

Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41042>
2026-04-21 23:37:55 +00:00
..
ci nvk/ci: document recent flakes 2026-03-23 23:38:32 +00:00
compiler nak/lower_cf: remove single src phis 2026-04-21 23:37:55 +00:00
drm build: pass licensing information in SPDX form 2024-06-29 12:42:49 -07:00
drm-shim nouveau/drm-shim: implement get_zcull_info 2026-03-07 23:21:40 +00:00
headers nil: Add zcull support 2026-02-25 22:42:06 +00:00
mme nouveau/mme: Add unit tests for sharing between compute and 3D scratch registers 2025-10-11 16:58:24 +00:00
nil nvk: don't set sector promotion on texture headers 2026-04-14 21:56:56 +00:00
rust meson: add rust_global_args for flags for all the rust compilations 2025-12-20 00:13:19 +01:00
vulkan nvk: Adjust maxFragmentCombinedOutputResources to match max descriptors limit 2026-04-13 18:44:08 +00:00
winsys nouveau/winsys: Fetch zcull_info on device create 2026-02-25 22:42:06 +00:00
.rustfmt.toml nouveau: Move .rustfmt.toml from NAK to src/nouveau/ 2024-04-08 20:28:43 +00:00
meson.build nouveau: Move codegen back to the src/gallium/drivers/nouveau 2025-05-28 21:01:26 +00:00