diff options
author | Samuel Pitoiset <[email protected]> | 2020-01-27 11:07:42 +0100 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-01-29 09:49:50 +0000 |
commit | 663d5c1399ddae76f696a8a3383deefe24076895 (patch) | |
tree | bd4c6c5c5359eefdd746a7d3c8ca123430f18f1f /src | |
parent | 3922d95b5111af21b40e720ef30b869f39bbcfdc (diff) |
radv: gather which input PS variables use an explicit interpolation mode
Signed-off-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3578>
Diffstat (limited to 'src')
-rw-r--r-- | src/amd/vulkan/radv_shader.h | 1 | ||||
-rw-r--r-- | src/amd/vulkan/radv_shader_info.c | 2 |
2 files changed, 3 insertions, 0 deletions
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); |