mesa/src
Daniel Schürmann f3d8bd18dd nir: introduce discard_is_demote compiler option
This new option indicates that the driver emits the same
code for nir_intrinsic_discard and nir_intrinsic_demote.
Otherwise, it is assumed that discard is implemented as
terminate.

spirv_to_nir uses this option in order to directly emit
nir_demote in case of OpKill.

RADV GFX11:
Totals from 3965 (4.99% of 79439) affected shaders:
MaxWaves: 119418 -> 119424 (+0.01%); split: +0.03%, -0.03%
Instrs: 1608753 -> 1620830 (+0.75%); split: -0.18%, +0.93%
CodeSize: 8759152 -> 8785152 (+0.30%); split: -0.18%, +0.48%
VGPRs: 152292 -> 149232 (-2.01%); split: -2.37%, +0.36%
Latency: 9162314 -> 10033923 (+9.51%); split: -0.46%, +9.97%
InvThroughput: 1491656 -> 1493408 (+0.12%); split: -0.10%, +0.22%
VClause: 21424 -> 21452 (+0.13%); split: -0.31%, +0.44%
SClause: 53598 -> 55871 (+4.24%); split: -2.15%, +6.39%
Copies: 90553 -> 90462 (-0.10%); split: -2.91%, +2.81%
Branches: 16283 -> 16311 (+0.17%)
PreSGPRs: 113993 -> 113254 (-0.65%); split: -1.84%, +1.19%
PreVGPRs: 110951 -> 108914 (-1.84%); split: -2.08%, +0.24%
VALU: 963192 -> 963167 (-0.00%); split: -0.01%, +0.01%
SALU: 87926 -> 90795 (+3.26%); split: -2.92%, +6.18%
VMEM: 25937 -> 25936 (-0.00%)
SMEM: 110012 -> 109799 (-0.19%); split: -0.20%, +0.01%

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27617>
2024-06-17 19:37:15 +00:00
..
amd nir: introduce discard_is_demote compiler option 2024-06-17 19:37:15 +00:00
android_stub vulkan/android: Add helper to probe AHB support 2024-05-14 14:53:44 +00:00
asahi asahi/lib: generate git_sha1.h for agx_device.c 2024-06-17 12:33:19 +00:00
broadcom nir: introduce discard_is_demote compiler option 2024-06-17 19:37:15 +00:00
c11 util/meson: Getting mesa util core to be self contained 2023-08-02 03:41:24 +00:00
compiler nir: introduce discard_is_demote compiler option 2024-06-17 19:37:15 +00:00
drm-shim drm-shim: Stub syncobj reset ioctl 2024-05-21 14:14:25 +00:00
egl egl/dri2: add support for EGL_EXT_surface_compression 2024-06-12 21:20:06 +00:00
etnaviv etnaviv: update headers from rnndb 2024-06-12 16:34:30 +00:00
freedreno ir3: set wrmask for spilled splits in shared RA 2024-06-17 14:11:46 +00:00
gallium nir: introduce discard_is_demote compiler option 2024-06-17 19:37:15 +00:00
gbm gbm: Support fixed-rate compression allocation 2024-06-12 21:20:06 +00:00
getopt
glx glx: fix build -D glx-direct=false 2024-06-14 16:24:33 +00:00
gtest gtest: backport ansi color fix 2023-08-18 21:33:14 +00:00
imagination pvr: use common stype debug 2024-05-10 18:49:38 +00:00
imgui
intel nir: introduce discard_is_demote compiler option 2024-06-17 19:37:15 +00:00
loader loader: silence implicit-load zink error by the loader 2024-05-10 14:19:59 +00:00
mapi mapi: add EXT_texture_storage_compression extension 2024-06-12 21:20:06 +00:00
mesa mesa: implement EXT_EGL_image_storage_compression extension 2024-06-12 21:20:06 +00:00
microsoft nir: introduce discard_is_demote compiler option 2024-06-17 19:37:15 +00:00
nouveau nir: introduce discard_is_demote compiler option 2024-06-17 19:37:15 +00:00
panfrost panvk: move macro-definition to header 2024-06-17 19:15:10 +00:00
tool pps: Config tweaks to avoid loosing traces 2024-03-25 19:49:50 +00:00
util radv: emit discard as demote by default 2024-06-17 19:37:15 +00:00
virtio venus/ci: Temporarily disable jobs 2024-06-13 09:58:02 +01:00
vulkan wsi: Call drmSyncobjQuery only once for all images 2024-06-17 16:06:46 +00:00
.clang-format asahi: add agx_ppp_push_merged helper 2024-05-14 04:57:27 +00:00
meson.build loader/wayland: Add fallback wl_display_dispatch_queue_timeout 2024-02-27 13:10:13 +00:00