From 5a24aed1ac1b6718c1670f5a243a2be20629d6b0 Mon Sep 17 00:00:00 2001 From: Qiang Yu Date: Wed, 25 Aug 2021 09:32:52 +0800 Subject: [PATCH] nir/lower_io_to_vector: check centroid & sample when merge variable MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These qualifiers should be respected for different varying load code generation. Reviewed-by: Marek Olšák Signed-off-by: Qiang Yu Part-of: --- src/compiler/nir/nir_lower_io_to_vector.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/compiler/nir/nir_lower_io_to_vector.c b/src/compiler/nir/nir_lower_io_to_vector.c index 13d692e72be..15bec03ead2 100644 --- a/src/compiler/nir/nir_lower_io_to_vector.c +++ b/src/compiler/nir/nir_lower_io_to_vector.c @@ -127,7 +127,9 @@ variables_can_merge(const nir_shader *shader, assert(a->data.mode == b->data.mode); if (shader->info.stage == MESA_SHADER_FRAGMENT && a->data.mode == nir_var_shader_in && - a->data.interpolation != b->data.interpolation) + (a->data.interpolation != b->data.interpolation || + a->data.centroid != b->data.centroid || + a->data.sample != b->data.sample)) return false; if (shader->info.stage == MESA_SHADER_FRAGMENT &&