From: Samuel Pitoiset Date: Fri, 11 May 2018 08:29:17 +0000 (+0200) Subject: nir: do not remove varyings used for transform feedback X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9f4e0aa7c1f9d71e6716295a1ee5b78e70ed6f37;p=mesa.git nir: do not remove varyings used for transform feedback When a xfb buffer is explicitely declared on a varying variable, we shouldn't remove it at link time. Signed-off-by: Samuel Pitoiset Reviewed-by: Jason Ekstrand --- diff --git a/src/compiler/nir/nir_linking_helpers.c b/src/compiler/nir/nir_linking_helpers.c index 8e67e84b588..aaa4204cce9 100644 --- a/src/compiler/nir/nir_linking_helpers.c +++ b/src/compiler/nir/nir_linking_helpers.c @@ -128,6 +128,9 @@ nir_remove_unused_io_vars(nir_shader *shader, struct exec_list *var_list, if (var->data.always_active_io) continue; + if (var->data.explicit_xfb_buffer) + continue; + uint64_t other_stage = used[var->data.location_frac]; if (!(other_stage & get_variable_io_mask(var, shader->info.stage))) {