mesa/src
Georg Lehmann 4e2f1345d8 nir/opt_algebraic: make fcmp(a+b, 0.0) -> fcmp(a, -b) exact using ninf
And remove some cases that never happen because we remove fneg on compare with constants.

Foz-DB Navi48:
Totals from 1305 (1.58% of 82405) affected shaders:
MaxWaves: 32872 -> 32854 (-0.05%)
Instrs: 4554013 -> 4551638 (-0.05%); split: -0.06%, +0.01%
CodeSize: 25269108 -> 25255428 (-0.05%); split: -0.06%, +0.00%
VGPRs: 87660 -> 87732 (+0.08%)
Latency: 33291152 -> 33285023 (-0.02%); split: -0.03%, +0.01%
InvThroughput: 8965288 -> 8963071 (-0.02%); split: -0.03%, +0.00%
VClause: 104008 -> 103947 (-0.06%); split: -0.09%, +0.03%
SClause: 97577 -> 97574 (-0.00%); split: -0.01%, +0.00%
Copies: 372741 -> 372628 (-0.03%); split: -0.05%, +0.02%
Branches: 134076 -> 134072 (-0.00%)
PreSGPRs: 65109 -> 65110 (+0.00%); split: -0.00%, +0.00%
PreVGPRs: 68911 -> 68968 (+0.08%); split: -0.01%, +0.10%
VALU: 2247091 -> 2245815 (-0.06%); split: -0.07%, +0.01%
SALU: 810190 -> 810001 (-0.02%); split: -0.02%, +0.00%
VOPD: 205075 -> 205016 (-0.03%); split: +0.04%, -0.07%

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39641>
2026-02-10 18:42:03 +00:00
..
amd radv/nir/rt: preserve inf/nan for emulated RT intersect 2026-02-10 18:42:02 +00:00
android_stub android_stub: fix missing prototypes issues 2025-12-02 20:03:02 +00:00
asahi asahi/compiler: remove unpack_half support 2026-02-06 06:12:36 +00:00
broadcom broadcom/compiler: Update comment clarifying OpTerminate implementation 2026-02-10 06:20:25 +00:00
c11 c11/threads: fix build on c23 2025-11-10 07:01:50 +10:00
compiler nir/opt_algebraic: make fcmp(a+b, 0.0) -> fcmp(a, -b) exact using ninf 2026-02-10 18:42:03 +00:00
drm-shim drm-shim: handle DRM_CAP_ADDFB2_MODIFIERS 2025-11-24 12:34:08 +00:00
egl mesa: retain const qualifier from pointer 2026-02-05 22:01:56 +00:00
etnaviv etnaviv: hwdb: Add BLT_64BPP_MASKED_CLEAR_FIX cap 2026-01-27 00:57:26 +00:00
freedreno freedreno/decode: Keep intereactive for query mode 2026-02-10 16:17:40 +00:00
gallium gallium/ttn: use nan/inf preserve instead of exact for kill's flt 2026-02-10 18:42:02 +00:00
gbm gbm: Make documentation for gbm_bo_map more explicit 2025-12-29 10:05:38 +00:00
getopt
gfxstream gfxstream: fix build after vk.xml update 2026-01-26 18:25:51 +00:00
glx glx: fix const qualifier warnings found with C23 glibc support 2026-02-09 09:00:43 +00:00
gtest
imagination pvr/ci: simplify the renderer string check 2026-02-09 18:58:14 +00:00
imgui imgui: Silence build warnings for imgui 2025-09-16 06:16:19 +00:00
intel intel/tools: intel_measure.py avoid early exit on corrupted data 2026-02-10 04:23:05 +00:00
kosmickrisp kk: Expose sampleRateShading 2026-02-09 13:35:01 +00:00
loader util,loader: silence asprintf() unused result warnings 2026-02-07 10:07:22 +00:00
mesa mesa/prog_to_nir: use nan/inf preserve instead of exact for kill's flt 2026-02-10 18:42:02 +00:00
microsoft microsoft/compiler: switch to a backend specific unpack half opcode 2026-02-06 06:12:36 +00:00
nouveau nak: remove unpack_half support 2026-02-06 06:12:36 +00:00
panfrost panvk: increase mappable VA range to 48 bits 2026-02-10 13:53:51 +00:00
poly panvk/csf: implement VK_EXT_primitives_generated_query primitive restart 2026-01-21 09:03:34 +00:00
tool pps/meson: minor refactor for pps_deps 2025-11-08 18:39:00 -08:00
util util/cpu: support detecting RISC-V FD/C/V/Zb[abs] with riscv_hwprobe 2026-02-07 17:34:03 +00:00
virtio venus: Fix error log on PPC 2026-02-09 21:35:45 +00:00
vulkan vulkan/wsi/x11: Make sure error is returned if create_swapchain fails 2026-02-05 19:15:19 +00:00
x11 treewide: strip unneeded inc_gallium inc_gallium_aux 2025-11-13 22:01:43 +00:00
.clang-format util: Add sparse bitset data structure 2025-11-06 21:34:33 +00:00
meson.build intel: Add virtio-gpu native context 2026-02-06 00:15:37 +00:00