Mesa (master): v3d: Don't try to update the shadow texture for separate stencil.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Apr 26 19:44:09 UTC 2019


Module: Mesa
Branch: master
Commit: 49071b2e3ff2a34b817483d38d286c04c8fa39cf
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=49071b2e3ff2a34b817483d38d286c04c8fa39cf

Author: Eric Anholt <eric at anholt.net>
Date:   Mon Apr 22 11:04:32 2019 -0700

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.

---

 src/gallium/drivers/v3d/v3dx_draw.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

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




More information about the mesa-commit mailing list