nir: remove nir_link_xfb_varyings
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run

RADV was the last user.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40977>
This commit is contained in:
Georg Lehmann 2026-04-15 12:15:58 +02:00 committed by Marge Bot
parent 228ec8c72a
commit f949e3b819
2 changed files with 0 additions and 34 deletions

View file

@ -5458,7 +5458,6 @@ bool nir_remove_unused_io_vars(nir_shader *shader, nir_variable_mode mode,
uint64_t *used_by_other_stage_patches);
void nir_compact_varyings(nir_shader *producer, nir_shader *consumer,
bool default_to_smooth_interp);
void nir_link_xfb_varyings(nir_shader *producer, nir_shader *consumer);
bool nir_link_opt_varyings(nir_shader *producer, nir_shader *consumer);
void nir_link_varying_precision(nir_shader *producer, nir_shader *consumer);
nir_variable *nir_clone_uniform_variable(nir_shader *nir,

View file

@ -952,39 +952,6 @@ nir_compact_varyings(nir_shader *producer, nir_shader *consumer,
default_to_smooth_interp);
}
/*
* Mark XFB varyings as always_active_io in the consumer so the linking opts
* don't touch them.
*/
void
nir_link_xfb_varyings(nir_shader *producer, nir_shader *consumer)
{
nir_variable *input_vars[MAX_VARYING][4] = { 0 };
nir_foreach_shader_in_variable(var, consumer) {
if (var->data.location >= VARYING_SLOT_VAR0 &&
var->data.location - VARYING_SLOT_VAR0 < MAX_VARYING) {
unsigned location = var->data.location - VARYING_SLOT_VAR0;
input_vars[location][var->data.location_frac] = var;
}
}
nir_foreach_shader_out_variable(var, producer) {
if (var->data.location >= VARYING_SLOT_VAR0 &&
var->data.location - VARYING_SLOT_VAR0 < MAX_VARYING) {
if (!var->data.always_active_io)
continue;
unsigned location = var->data.location - VARYING_SLOT_VAR0;
if (input_vars[location][var->data.location_frac]) {
input_vars[location][var->data.location_frac]->data.always_active_io = true;
}
}
}
}
static bool
does_varying_match(nir_variable *out_var, nir_variable *in_var)
{