Mesa (master): nir/lower_io_to_vector: don't merge compact varyings

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Sep 6 22:38:34 UTC 2019


Module: Mesa
Branch: master
Commit: 6b8cb087568699ca9a6e9e8b7bf49179e622b59f
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6b8cb087568699ca9a6e9e8b7bf49179e622b59f

Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Fri Sep  6 21:38:57 2019 +0100

nir/lower_io_to_vector: don't merge compact varyings

Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
Fixes: 02bc4aabb48 ('nir/lower_io_to_vector: allow FS outputs to be vectorized')
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/compiler/nir/nir_lower_io_to_vector.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/compiler/nir/nir_lower_io_to_vector.c b/src/compiler/nir/nir_lower_io_to_vector.c
index 677b4a84095..84bd941c11c 100644
--- a/src/compiler/nir/nir_lower_io_to_vector.c
+++ b/src/compiler/nir/nir_lower_io_to_vector.c
@@ -81,6 +81,9 @@ variables_can_merge(const nir_shader *shader,
                     const nir_variable *a, const nir_variable *b,
                     bool same_array_structure)
 {
+   if (a->data.compact || b->data.compact)
+      return false;
+
    const struct glsl_type *a_type_tail = a->type;
    const struct glsl_type *b_type_tail = b->type;
 




More information about the mesa-commit mailing list