Mesa (main): mesa/st: use has_stencil_export instead of querying screen cap.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Dec 22 21:36:52 UTC 2021


Module: Mesa
Branch: main
Commit: be277ace89200f955e89546afe27383c30add0e1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=be277ace89200f955e89546afe27383c30add0e1

Author: Dave Airlie <airlied at redhat.com>
Date:   Wed Dec 22 17:05:09 2021 +1000

mesa/st: use has_stencil_export instead of querying screen cap.

We already query at context setup, just use that value.

Reviewed-by: Kristian H. Kristensen <hoegsberg at google.com>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14286>

---

 src/mesa/state_tracker/st_cb_drawpixels.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/mesa/state_tracker/st_cb_drawpixels.c b/src/mesa/state_tracker/st_cb_drawpixels.c
index 43c88d20a23..3635d266e62 100644
--- a/src/mesa/state_tracker/st_cb_drawpixels.c
+++ b/src/mesa/state_tracker/st_cb_drawpixels.c
@@ -1318,7 +1318,7 @@ st_DrawPixels(struct gl_context *ctx, GLint x, GLint y,
       write_depth = GL_TRUE;
 
    if (write_stencil &&
-       !st->screen->get_param(st->screen, PIPE_CAP_SHADER_STENCIL_EXPORT)) {
+       !st->has_stencil_export) {
       /* software fallback */
       draw_stencil_pixels(ctx, x, y, width, height, format, type,
                           unpack, pixels);
@@ -1704,7 +1704,7 @@ st_CopyPixels(struct gl_context *ctx, GLint srcx, GLint srcy,
 
    /* fallback if the driver can't do stencil exports */
    if (type == GL_DEPTH_STENCIL &&
-      !st->screen->get_param(st->screen, PIPE_CAP_SHADER_STENCIL_EXPORT)) {
+       !st->has_stencil_export) {
       st_CopyPixels(ctx, srcx, srcy, width, height, dstx, dsty, GL_STENCIL);
       st_CopyPixels(ctx, srcx, srcy, width, height, dstx, dsty, GL_DEPTH);
       return;
@@ -1712,7 +1712,7 @@ st_CopyPixels(struct gl_context *ctx, GLint srcx, GLint srcy,
 
    /* fallback if the driver can't do stencil exports */
    if (type == GL_STENCIL &&
-       !st->screen->get_param(st->screen, PIPE_CAP_SHADER_STENCIL_EXPORT)) {
+       !st->has_stencil_export) {
       copy_stencil_pixels(ctx, srcx, srcy, width, height, dstx, dsty);
       return;
    }



More information about the mesa-commit mailing list