[Mesa-dev] [PATCH 3/3] mesa: make use of NewScissorTest driver flags
Samuel Pitoiset
samuel.pitoiset at gmail.com
Tue Jun 6 19:59:58 UTC 2017
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
---
src/mesa/main/enable.c | 2 ++
src/mesa/state_tracker/st_context.c | 4 +---
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c
index ef278a318a..394c9e13c4 100644
--- a/src/mesa/main/enable.c
+++ b/src/mesa/main/enable.c
@@ -671,6 +671,7 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state)
state * ((1 << ctx->Const.MaxViewports) - 1);
if (newEnabled != ctx->Scissor.EnableFlags) {
FLUSH_VERTICES(ctx, _NEW_SCISSOR);
+ ctx->NewDriverState |= ctx->DriverFlags.NewScissorTest;
ctx->Scissor.EnableFlags = newEnabled;
}
}
@@ -1113,6 +1114,7 @@ _mesa_set_enablei(struct gl_context *ctx, GLenum cap,
}
if (((ctx->Scissor.EnableFlags >> index) & 1) != state) {
FLUSH_VERTICES(ctx, _NEW_SCISSOR);
+ ctx->NewDriverState |= ctx->DriverFlags.NewScissorTest;
if (state)
ctx->Scissor.EnableFlags |= (1 << index);
else
diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c
index d8ec45f118..8d348e28b2 100644
--- a/src/mesa/state_tracker/st_context.c
+++ b/src/mesa/state_tracker/st_context.c
@@ -191,9 +191,6 @@ void st_invalidate_state(struct gl_context * ctx, GLbitfield new_state)
if (new_state & _NEW_PROGRAM)
st->dirty |= ST_NEW_RASTERIZER;
- if (new_state & _NEW_SCISSOR)
- st->dirty |= ST_NEW_RASTERIZER;
-
if (new_state & _NEW_FOG)
st->dirty |= ST_NEW_FS_STATE;
@@ -514,6 +511,7 @@ static void st_init_driver_flags(struct gl_driver_flags *f)
f->NewImageUnits = ST_NEW_IMAGE_UNITS;
f->NewWindowRectangles = ST_NEW_WINDOW_RECTANGLES;
f->NewScissorRect = ST_NEW_SCISSOR;
+ f->NewScissorTest = ST_NEW_SCISSOR | ST_NEW_RASTERIZER;
}
struct st_context *st_create_context(gl_api api, struct pipe_context *pipe,
--
2.13.0
More information about the mesa-dev
mailing list