mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-01 23:18:20 +02:00
The semantics of discard differ between GLSL and HLSL and
their various implementations. Subsequently, numerous application
bugs occurred and SPV_EXT_demote_to_helper_invocation was written
in order to clarify the behavior. In NIR, we now have 3 different
intrinsics for 2 things, and while demote and terminate have clear
semantics, discard still doesn't and can mean either of the two.
This patch entirely removes nir_intrinsic_discard and
nir_intrinsic_discard_if and replaces all occurences either with
nir_intrinsic_terminate{_if} or nir_intrinsic_demote{_if} in the
case that the NIR option 'discard_is_demote' is being set.
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>
|
||
|---|---|---|
| .. | ||
| asahi | ||
| crocus | ||
| d3d12 | ||
| etnaviv | ||
| freedreno | ||
| i915 | ||
| iris | ||
| lima | ||
| llvmpipe | ||
| nouveau | ||
| panfrost | ||
| r300 | ||
| r600 | ||
| radeonsi | ||
| softpipe | ||
| svga | ||
| tegra | ||
| v3d | ||
| vc4 | ||
| virgl | ||
| zink | ||