From 3119871bd9558e5881466b70a4c366d2f83bba82 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Tue, 14 Jun 2016 14:38:04 -0700 Subject: glsl: Pack integer and double varyings as flat even if interpolation mode is none v2: Also update varying_matches::compute_packing_class(). Suggested by Timothy Arceri. Signed-off-by: Ian Romanick Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96358 Reviewed-by: Kenneth Graunke Cc: "12.0" Cc: Gregory Hainaut Cc: Ilia Mirkin --- src/compiler/glsl/link_varyings.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/compiler/glsl/link_varyings.cpp') diff --git a/src/compiler/glsl/link_varyings.cpp b/src/compiler/glsl/link_varyings.cpp index 473626b7a16..76d0be1c61d 100644 --- a/src/compiler/glsl/link_varyings.cpp +++ b/src/compiler/glsl/link_varyings.cpp @@ -1611,7 +1611,8 @@ varying_matches::compute_packing_class(const ir_variable *var) unsigned packing_class = var->data.centroid | (var->data.sample << 1) | (var->data.patch << 2); packing_class *= 4; - packing_class += var->data.interpolation; + packing_class += var->is_interpolation_flat() + ? unsigned(INTERP_QUALIFIER_FLAT) : var->data.interpolation; return packing_class; } -- cgit v1.2.3