From 663d5c1399ddae76f696a8a3383deefe24076895 Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Mon, 27 Jan 2020 11:07:42 +0100 Subject: [PATCH] radv: gather which input PS variables use an explicit interpolation mode Signed-off-by: Samuel Pitoiset Reviewed-by: Bas Nieuwenhuizen Part-of: --- src/amd/vulkan/radv_shader.h | 1 + src/amd/vulkan/radv_shader_info.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/amd/vulkan/radv_shader.h b/src/amd/vulkan/radv_shader.h index 3001f494cef..131774bd886 100644 --- a/src/amd/vulkan/radv_shader.h +++ b/src/amd/vulkan/radv_shader.h @@ -294,6 +294,7 @@ struct radv_shader_info { uint8_t num_input_clips_culls; uint32_t input_mask; uint32_t flat_shaded_mask; + uint32_t explicit_shaded_mask; uint32_t float16_shaded_mask; uint32_t num_interp; bool can_discard; diff --git a/src/amd/vulkan/radv_shader_info.c b/src/amd/vulkan/radv_shader_info.c index 613746c7dde..80f93b1c0a7 100644 --- a/src/amd/vulkan/radv_shader_info.c +++ b/src/amd/vulkan/radv_shader_info.c @@ -479,6 +479,8 @@ gather_info_input_decl_ps(const nir_shader *nir, const nir_variable *var, if (var->data.interpolation == INTERP_MODE_FLAT) info->ps.flat_shaded_mask |= mask << var->data.driver_location; + if (var->data.interpolation == INTERP_MODE_EXPLICIT) + info->ps.explicit_shaded_mask |= mask << var->data.driver_location; if (var->data.location >= VARYING_SLOT_VAR0) info->ps.input_mask |= mask << (var->data.location - VARYING_SLOT_VAR0); -- 2.30.2