From: Eric Anholt Date: Mon, 22 Apr 2019 18:04:32 +0000 (-0700) Subject: v3d: Don't try to update the shadow texture for separate stencil. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=49071b2e3ff2a34b817483d38d286c04c8fa39cf;p=mesa.git v3d: Don't try to update the shadow texture for separate stencil. There are two cases where v3d's sampler view's resource doesn't match the base's: shadow textures for sampling from raster, and pointing at the separate depth texture for z32f_s8x24. We only want to update shadow for the first case. Fixes dEQP-GLES31.functional.stencil_texturing.render.depth32f_stencil8_draw when run after the previous testcase. --- diff --git a/src/gallium/drivers/v3d/v3dx_draw.c b/src/gallium/drivers/v3d/v3dx_draw.c index 0c8eb66b939..7ddd1f92a2f 100644 --- a/src/gallium/drivers/v3d/v3dx_draw.c +++ b/src/gallium/drivers/v3d/v3dx_draw.c @@ -157,7 +157,8 @@ v3d_predraw_check_stage_inputs(struct pipe_context *pctx, continue; struct v3d_sampler_view *view = v3d_sampler_view(pview); - if (view->texture != view->base.texture) + if (view->texture != view->base.texture && + view->base.format != PIPE_FORMAT_X32_S8X24_UINT) v3d_update_shadow_texture(pctx, &view->base); v3d_flush_jobs_writing_resource(v3d, view->texture);