xserver: Branch 'master'

Maarten Maathuis madman2003 at kemper.freedesktop.org
Sat Feb 7 17:13:04 PST 2009


 exa/exa_accel.c   |   13 -------------
 exa/exa_priv.h    |    1 -
 exa/exa_unaccel.c |   15 +--------------
 3 files changed, 1 insertion(+), 28 deletions(-)

New commits:
commit 30daba6903378dd47f386c0012a0667fd2368f3e
Author: Maarten Maathuis <madman2003 at gmail.com>
Date:   Sun Feb 8 02:08:13 2009 +0100

    exa: All fallbacks should have a GC, remove some code.
    
    - I did some testing with full fallbacks forced by the driver.
    - I ran rendercheck, expedite and the (full) x11perf test suite.
    - Thanks to ajax for pointing out this should be unneeded.

diff --git a/exa/exa_accel.c b/exa/exa_accel.c
index 326720f..b1ab2d1 100644
--- a/exa/exa_accel.c
+++ b/exa/exa_accel.c
@@ -533,21 +533,8 @@ exaCopyNtoN (DrawablePtr    pSrcDrawable,
 	return;
     }
 
-    /* We need a pGC to call our fallback. */
-    if (!pGC) {
-	pExaScr->fallback_flags |= EXA_FALLBACK_NOGC;
-	pGC = CreateScratchGC(pDstDrawable->pScreen, pDstDrawable->depth);
-	if (!pGC)
-	    return;
-    }
-
     /* fallback */
     ExaCheckCopyNtoN(pSrcDrawable, pDstDrawable, pGC, pbox, nbox, dx, dy, reverse, upsidedown, bitplane, closure);
-
-    if (pExaScr->fallback_flags & EXA_FALLBACK_NOGC) {
-	pExaScr->fallback_flags &= ~EXA_FALLBACK_NOGC;
-	FreeScratchGC(pGC);
-    }
 }
 
 RegionPtr
diff --git a/exa/exa_priv.h b/exa/exa_priv.h
index 588fdec..461e5e3 100644
--- a/exa/exa_priv.h
+++ b/exa/exa_priv.h
@@ -129,7 +129,6 @@ typedef struct {
 
 #define EXA_FALLBACK_COPYWINDOW (1 << 0)
 #define EXA_ACCEL_COPYWINDOW (1 << 1)
-#define EXA_FALLBACK_NOGC (1 << 2)
 
 typedef void (*EnableDisableFBAccessProcPtr)(int, Bool);
 typedef struct {
diff --git a/exa/exa_unaccel.c b/exa/exa_unaccel.c
index 978a32f..c821f0d 100644
--- a/exa/exa_unaccel.c
+++ b/exa/exa_unaccel.c
@@ -116,19 +116,6 @@ ExaCheckPutImage (DrawablePtr pDrawable, GCPtr pGC, int depth,
     EXA_GC_EPILOGUE(pGC);
 }
 
-/* Sometimes we need a pGC to call a function, but don't actually want the lower
- * layer to do something with the contents of this fake GC. */
-static inline GCPtr
-ExaCheckWantGC(DrawablePtr pDrawable, GCPtr pGC)
-{
-    ExaScreenPriv(pDrawable->pScreen);
-
-    if (pExaScr->fallback_flags & EXA_FALLBACK_NOGC)
-	return NULL;
-
-    return pGC;
-}
-
 void
 ExaCheckCopyNtoN (DrawablePtr pSrc, DrawablePtr pDst,  GCPtr pGC,
 	     BoxPtr	pbox, int nbox, int dx, int dy, Bool	reverse, 
@@ -141,7 +128,7 @@ ExaCheckCopyNtoN (DrawablePtr pSrc, DrawablePtr pDst,  GCPtr pGC,
     exaPrepareAccess (pSrc, EXA_PREPARE_SRC);
     /* This will eventually call fbCopyNtoN, with some calculation overhead. */
     while (nbox--) {
-	pGC->ops->CopyArea (pSrc, pDst, ExaCheckWantGC(pDst, pGC), pbox->x1 - pSrc->x + dx, pbox->y1 - pSrc->y + dy, 
+	pGC->ops->CopyArea (pSrc, pDst, pGC, pbox->x1 - pSrc->x + dx, pbox->y1 - pSrc->y + dy, 
 			pbox->x2 - pbox->x1, pbox->y2 - pbox->y1, pbox->x1 - pDst->x, pbox->y1 - pDst->y);
 	pbox++;
     }


More information about the xorg-commit mailing list