radv: gather which input PS variables use an explicit interpolation mode

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3578>
This commit is contained in:
Samuel Pitoiset 2020-01-27 11:07:42 +01:00 committed by Marge Bot
parent 3922d95b51
commit 663d5c1399
2 changed files with 3 additions and 0 deletions

View file

@ -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;

View file

@ -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);