radeonsi: add a hack to disable TRUNC_COORD for shadow samplers

This fixes dEQP-GLES3.functional.shaders.texture_functions.textureprojlodoffset.sampler2dshadow_vertex.

This is probably a dEQP bug.

Fixes: d573d1d825

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5209>
(cherry picked from commit fe3947632c)
This commit is contained in:
Marek Olšák 2020-05-26 05:39:08 -04:00 committed by Eric Engestrom
parent d9a574b6f3
commit b95bc0e07d
2 changed files with 3 additions and 2 deletions

View file

@ -2380,7 +2380,7 @@
"description": "radeonsi: add a hack to disable TRUNC_COORD for shadow samplers",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"master_sha": null,
"because_sha": "d573d1d82524b8a2e5f56938069cabc0f0176a0e"
},

View file

@ -4467,7 +4467,8 @@ static void *si_create_sampler_state(struct pipe_context *ctx,
unsigned max_aniso = sscreen->force_aniso >= 0 ? sscreen->force_aniso : state->max_anisotropy;
unsigned max_aniso_ratio = si_tex_aniso_filter(max_aniso);
bool trunc_coord = state->min_img_filter == PIPE_TEX_FILTER_NEAREST &&
state->mag_img_filter == PIPE_TEX_FILTER_NEAREST;
state->mag_img_filter == PIPE_TEX_FILTER_NEAREST &&
state->compare_mode == PIPE_TEX_COMPARE_NONE;
union pipe_color_union clamped_border_color;
if (!rstate) {