mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-20 13:50:11 +01:00
radv/nir: fix front_face_fsign opt
If front facing primitives are culled, there are only back facing fragments left.
Fixes: 0fe8250bf4 ("radv: optimize known front_face_fsign too")
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38937>
This commit is contained in:
parent
d17d1f53bd
commit
fee87679bf
1 changed files with 2 additions and 2 deletions
|
|
@ -25,9 +25,9 @@ pass(nir_builder *b, nir_intrinsic_instr *intr, void *data)
|
||||||
}
|
}
|
||||||
} else if (intr->intrinsic == nir_intrinsic_load_front_face_fsign) {
|
} else if (intr->intrinsic == nir_intrinsic_load_front_face_fsign) {
|
||||||
if (gfx_state->rs.cull_mode == VK_CULL_MODE_FRONT_BIT) {
|
if (gfx_state->rs.cull_mode == VK_CULL_MODE_FRONT_BIT) {
|
||||||
replacement = nir_imm_float(b, 1.0);
|
|
||||||
} else if (gfx_state->rs.cull_mode == VK_CULL_MODE_BACK_BIT) {
|
|
||||||
replacement = nir_imm_float(b, -1.0);
|
replacement = nir_imm_float(b, -1.0);
|
||||||
|
} else if (gfx_state->rs.cull_mode == VK_CULL_MODE_BACK_BIT) {
|
||||||
|
replacement = nir_imm_float(b, 1.0);
|
||||||
}
|
}
|
||||||
} else if (intr->intrinsic == nir_intrinsic_load_sample_id) {
|
} else if (intr->intrinsic == nir_intrinsic_load_sample_id) {
|
||||||
if (!gfx_state->dynamic_rasterization_samples && gfx_state->ms.rasterization_samples == 0) {
|
if (!gfx_state->dynamic_rasterization_samples && gfx_state->ms.rasterization_samples == 0) {
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue