Mesa (main): mesa/st: move invalidate_on_gl_viewport to ctx
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Mon Jan 24 21:35:12 UTC 2022
Module: Mesa
Branch: main
Commit: 840aabe7523e9b8d915ce4368ac27628b6154c39
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=840aabe7523e9b8d915ce4368ac27628b6154c39
Author: Dave Airlie <airlied at redhat.com>
Date: Mon Jan 24 16:30:18 2022 +1000
mesa/st: move invalidate_on_gl_viewport to ctx
This is cleaner in the gl context now.
Reviewed-by: Kristian H. Kristensen <hoegsberg at google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14675>
---
src/mesa/main/attrib.c | 3 +--
src/mesa/main/mtypes.h | 5 +++++
src/mesa/main/viewport.c | 6 +++---
src/mesa/state_tracker/st_context.h | 4 ----
src/mesa/state_tracker/st_manager.c | 2 +-
5 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c
index 667b890913f..b69edd7375d 100644
--- a/src/mesa/main/attrib.c
+++ b/src/mesa/main/attrib.c
@@ -62,7 +62,6 @@
#include "state_tracker/st_cb_texture.h"
#include "state_tracker/st_manager.h"
-#include "state_tracker/st_context.h"
#include "state_tracker/st_sampler_view.h"
static inline bool
@@ -1093,7 +1092,7 @@ _mesa_PopAttrib(void)
memcpy(&ctx->ViewportArray[i].X, &vp->X, sizeof(float) * 6);
- if (st_context(ctx)->invalidate_on_gl_viewport)
+ if (ctx->invalidate_on_gl_viewport)
st_manager_invalidate_drawables(ctx);
}
}
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index a5adc7facb2..62ad6bc71c2 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -3585,6 +3585,11 @@ struct gl_context
struct st_config_options *st_opts;
struct cso_context *cso_context;
bool has_invalidate_buffer;
+ /* On old libGL's for linux we need to invalidate the drawables
+ * on glViewpport calls, this is set via a option.
+ */
+ bool invalidate_on_gl_viewport;
+
/*@}*/
/**
diff --git a/src/mesa/main/viewport.c b/src/mesa/main/viewport.c
index da4d87315b7..9b31eb9ca1e 100644
--- a/src/mesa/main/viewport.c
+++ b/src/mesa/main/viewport.c
@@ -116,7 +116,7 @@ viewport(struct gl_context *ctx, GLint x, GLint y, GLsizei width,
for (unsigned i = 0; i < ctx->Const.MaxViewports; i++)
set_viewport_no_notify(ctx, i, input.X, input.Y, input.Width, input.Height);
- if (st_context(ctx)->invalidate_on_gl_viewport)
+ if (ctx->invalidate_on_gl_viewport)
st_manager_invalidate_drawables(ctx);
}
@@ -169,7 +169,7 @@ _mesa_set_viewport(struct gl_context *ctx, unsigned idx, GLfloat x, GLfloat y,
clamp_viewport(ctx, &x, &y, &width, &height);
set_viewport_no_notify(ctx, idx, x, y, width, height);
- if (st_context(ctx)->invalidate_on_gl_viewport)
+ if (ctx->invalidate_on_gl_viewport)
st_manager_invalidate_drawables(ctx);
}
@@ -185,7 +185,7 @@ viewport_array(struct gl_context *ctx, GLuint first, GLsizei count,
inputs[i].Width, inputs[i].Height);
}
- if (st_context(ctx)->invalidate_on_gl_viewport)
+ if (ctx->invalidate_on_gl_viewport)
st_manager_invalidate_drawables(ctx);
}
diff --git a/src/mesa/state_tracker/st_context.h b/src/mesa/state_tracker/st_context.h
index 90651108f70..af629ba2215 100644
--- a/src/mesa/state_tracker/st_context.h
+++ b/src/mesa/state_tracker/st_context.h
@@ -186,10 +186,6 @@ struct st_context
boolean emulate_gl_clamp;
boolean texture_buffer_sampler;
- /* On old libGL's for linux we need to invalidate the drawables
- * on glViewpport calls, this is set via a option.
- */
- boolean invalidate_on_gl_viewport;
boolean draw_needs_minmax_index;
boolean has_hw_atomics;
diff --git a/src/mesa/state_tracker/st_manager.c b/src/mesa/state_tracker/st_manager.c
index 04c22fe70f4..a3ac106a77e 100644
--- a/src/mesa/state_tracker/st_manager.c
+++ b/src/mesa/state_tracker/st_manager.c
@@ -1118,7 +1118,7 @@ st_api_create_context(struct st_api *stapi, struct st_manager *smapi,
st->can_scissor_clear = !!st->screen->get_param(st->screen, PIPE_CAP_CLEAR_SCISSORED);
- st->invalidate_on_gl_viewport =
+ st->ctx->invalidate_on_gl_viewport =
smapi->get_param(smapi, ST_MANAGER_BROKEN_INVALIDATE);
st->iface.destroy = st_context_destroy;
More information about the mesa-commit
mailing list