From 95073a2dca03a48f4c77bc846a4a6d1f0eb81ae6 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Fri, 26 Sep 2014 15:13:30 -0700 Subject: [PATCH] mesa: Avoid flagging _NEW_VIEWPORT on redundant viewport updates. Cuts the number of i965 color calculator viewport uploads by 100x (11017983 -> 113385) in 'x11perf -gc' with Glamor in Xephyr. Signed-off-by: Kenneth Graunke Reviewed-by: Brian Paul Reviewed-by: Ian Romanick --- src/mesa/main/viewport.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mesa/main/viewport.c b/src/mesa/main/viewport.c index 6545bf68a77..222ae307b55 100644 --- a/src/mesa/main/viewport.c +++ b/src/mesa/main/viewport.c @@ -58,6 +58,12 @@ set_viewport_no_notify(struct gl_context *ctx, unsigned idx, ctx->Const.ViewportBounds.Min, ctx->Const.ViewportBounds.Max); } + if (ctx->ViewportArray[idx].X == x && + ctx->ViewportArray[idx].Width == width && + ctx->ViewportArray[idx].Y == y && + ctx->ViewportArray[idx].Height == height) + return; + ctx->ViewportArray[idx].X = x; ctx->ViewportArray[idx].Width = width; ctx->ViewportArray[idx].Y = y; -- 2.30.2