From 14f888a2ba506a66754fcdfc7b050bdedf15ac7c Mon Sep 17 00:00:00 2001 From: Thomas Hellstrom Date: Wed, 26 Apr 2017 23:58:47 -0700 Subject: [PATCH] svga: Prefer accelerated blits over cpu copy region This reduces the number of cpu copy_region fallbacks on a Nvidia system running the piglit command ./publish/bin/piglit run -1 -t copy -t blit tests/quick from 64789 to 780 Previously this has caused a regression in piglit test spec@!opengl 1.0@gl-1.0-scissor-copypixels, but I'm currently not able to reproduce that regression. Signed-off-by: Thomas Hellstrom Reviewed-by: Brian Paul Reviewed-by: Charmaine Lee --- src/gallium/drivers/svga/svga_pipe_blit.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/svga/svga_pipe_blit.c b/src/gallium/drivers/svga/svga_pipe_blit.c index 3d7196dddd2..ef5aeee9a16 100644 --- a/src/gallium/drivers/svga/svga_pipe_blit.c +++ b/src/gallium/drivers/svga/svga_pipe_blit.c @@ -669,14 +669,12 @@ svga_blit(struct pipe_context *pipe, if (try_copy_region(svga, blit)) goto done; - /* FIXME: Ideally, we should call try_blit() before try_cpu_copy_region(), - * however that breaks piglit test gl-1.0-scissor-copypixels. - */ - if (try_cpu_copy_region(svga, blit)) + if (try_blit(svga, blit)) goto done; - if (try_blit(svga, blit)) + if (!try_cpu_copy_region(svga, blit)) debug_printf("svga: Blit failed.\n"); + done: SVGA_STATS_TIME_POP(sws); /* SVGA_STATS_TIME_BLIT */ (void) sws; -- 2.30.2