diff options
author | Russell King <rmk+cubox@arm.linux.org.uk> | 2013-10-29 12:28:05 +0000 |
---|---|---|
committer | Russell King <rmk@arm.linux.org.uk> | 2013-10-29 19:21:13 +0000 |
commit | c7227a88ada234f7316aad1992fa77bcf119b407 (patch) | |
tree | f187d2464f690d146feb1b6ec2c72b8e1308d775 | |
parent | 016419f8fbd22cc978a6963b6d74ac67ebfaf5dc (diff) |
Avoid setting up a brush when none is required
Our blit copies do not make use of the brush, so it's pointless
setting one up each time. Avoid this to reduce the overhead of
setting up blit copies.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
-rw-r--r-- | src/vivante_accel.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/src/vivante_accel.c b/src/vivante_accel.c index f86a35f..d7d9fa5 100644 --- a/src/vivante_accel.c +++ b/src/vivante_accel.c @@ -442,6 +442,7 @@ static Bool vivante_fill(struct vivante *vivante, struct vivante_pixmap *vPix, } else { fg = pGC->fgPixel; } + err = gco2D_LoadSolidBrush(vivante->e2d, vPix->format, 0, fg, ~0ULL); if (err != gcvSTATUS_OK) { vivante_error(vivante, "gco2D_LoadSolidBrush", err); @@ -644,11 +645,7 @@ Bool vivante_accel_PutImage(DrawablePtr pDrawable, GCPtr pGC, int depth, goto unmap; } - err = gco2D_LoadSolidBrush(vivante->e2d, vPix->format, 0, 0, ~0ULL); - if (err != gcvSTATUS_OK) { - vivante_error(vivante, "LoadSolidBrush", err); - goto unmap; - } + /* No need to load the brush here - the blit copy doesn't use it. */ total.x1 = x; total.y1 = y; @@ -726,11 +723,7 @@ void vivante_accel_CopyNtoN(DrawablePtr pSrc, DrawablePtr pDst, vivante_disable_alpha_blend(vivante); - err = gco2D_LoadSolidBrush(vivante->e2d, vDst->format, 0, 0, ~0ULL); - if (err != gcvSTATUS_OK) { - what = "LoadSolidBrush"; - goto fallback_msg; - } + /* No need to load the brush here - the blit copy doesn't use it. */ err = gco2D_SetColorSourceAdvanced(vivante->e2d, vSrc->handle, vSrc->pitch, vSrc->format, gcvSURF_0_DEGREE, |