diff --git a/src/gallium/drivers/radeonsi/si_nir_kill_outputs.c b/src/gallium/drivers/radeonsi/si_nir_kill_outputs.c index fdbeed80b6d..2953f568b99 100644 --- a/src/gallium/drivers/radeonsi/si_nir_kill_outputs.c +++ b/src/gallium/drivers/radeonsi/si_nir_kill_outputs.c @@ -75,11 +75,7 @@ bool si_nir_kill_outputs(nir_shader *nir, const union si_shader_key *key) break; case VARYING_SLOT_CLIP_VERTEX: - /* TODO: We should only kill specific clip planes as required by kill_clip_distance, - * not whole gl_ClipVertex. Lower ClipVertex in NIR. - */ - if ((key->ge.opt.kill_clip_distances & SI_USER_CLIP_PLANE_MASK) == - SI_USER_CLIP_PLANE_MASK) + if (key->ge.opt.kill_clip_distances == SI_USER_CLIP_PLANE_MASK) progress |= nir_remove_sysval_output(intr, MESA_SHADER_FRAGMENT); break; diff --git a/src/gallium/drivers/radeonsi/si_shader.h b/src/gallium/drivers/radeonsi/si_shader.h index 36c4df7df1e..76b2e18d788 100644 --- a/src/gallium/drivers/radeonsi/si_shader.h +++ b/src/gallium/drivers/radeonsi/si_shader.h @@ -129,7 +129,7 @@ struct nir_instr; #define SI_MAX_ATTRIBS 16 #define SI_MAX_VS_OUTPUTS 40 -#define SI_USER_CLIP_PLANE_MASK 0x3F +#define SI_USER_CLIP_PLANE_MASK BITFIELD_MASK(8) #define INTERP_MODE_COLOR INTERP_MODE_COUNT