Module: Mesa Branch: main Commit: f97d82c52bec095a4592c40e19869f95fa07f561 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f97d82c52bec095a4592c40e19869f95fa07f561
Author: Rhys Perry <[email protected]> Date: Mon Apr 25 19:42:30 2022 +0100 radv: fix clearing of TRUNC_COORD with tg4 and immutable samplers Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Reviewed-by: Samuel Pitoiset <[email protected]> Fixes: 15640e58d96 ("radv,aco: lower texture descriptor loads in NIR") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16148> --- src/amd/vulkan/radv_nir_apply_pipeline_layout.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/amd/vulkan/radv_nir_apply_pipeline_layout.c b/src/amd/vulkan/radv_nir_apply_pipeline_layout.c index 004999ffeed..abd23aec0bb 100644 --- a/src/amd/vulkan/radv_nir_apply_pipeline_layout.c +++ b/src/amd/vulkan/radv_nir_apply_pipeline_layout.c @@ -251,8 +251,9 @@ get_sampler_desc(nir_builder *b, apply_layout_state *state, nir_deref_instr *der } } + uint32_t dword0_mask = tex->op == nir_texop_tg4 ? C_008F30_TRUNC_COORD : 0xffffffffu; const uint32_t *samplers = radv_immutable_samplers(layout, binding); - return nir_imm_ivec4(b, samplers[constant_index * 4 + 0], samplers[constant_index * 4 + 1], + return nir_imm_ivec4(b, samplers[constant_index * 4 + 0] & dword0_mask, samplers[constant_index * 4 + 1], samplers[constant_index * 4 + 2], samplers[constant_index * 4 + 3]); }
