[PATCH xserver] EXA: Use dixGetPrivate(Addr) instead of dixLookupPrivate.

Michel Dänzer michel at daenzer.net
Sat Mar 26 04:16:02 PDT 2011


From: Michel Dänzer <daenzer at vmware.com>

The latter calls the former, let's cut the middle man and eliminate a branch
in a hot path.

Signed-off-by: Michel Dänzer <daenzer at vmware.com>
---
 exa/exa_priv.h |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/exa/exa_priv.h b/exa/exa_priv.h
index e5d90d4..70de4bd 100644
--- a/exa/exa_priv.h
+++ b/exa/exa_priv.h
@@ -228,10 +228,10 @@ extern DevPrivateKeyRec exaPixmapPrivateKeyRec;
 extern DevPrivateKeyRec exaGCPrivateKeyRec;
 #define exaGCPrivateKey (&exaGCPrivateKeyRec)
 
-#define ExaGetScreenPriv(s) ((ExaScreenPrivPtr)dixLookupPrivate(&(s)->devPrivates, exaScreenPrivateKey))
+#define ExaGetScreenPriv(s) ((ExaScreenPrivPtr)dixGetPrivate(&(s)->devPrivates, exaScreenPrivateKey))
 #define ExaScreenPriv(s)	ExaScreenPrivPtr    pExaScr = ExaGetScreenPriv(s)
 
-#define ExaGetGCPriv(gc) ((ExaGCPrivPtr)dixLookupPrivate(&(gc)->devPrivates, exaGCPrivateKey))
+#define ExaGetGCPriv(gc) ((ExaGCPrivPtr)dixGetPrivateAddr(&(gc)->devPrivates, exaGCPrivateKey))
 #define ExaGCPriv(gc) ExaGCPrivPtr pExaGC = ExaGetGCPriv(gc)
 
 /*
@@ -282,8 +282,7 @@ extern DevPrivateKeyRec exaGCPrivateKeyRec;
 #define EXA_PIXMAP_SCORE_PINNED	    1000
 #define EXA_PIXMAP_SCORE_INIT	    1001
 
-#define ExaGetPixmapPriv(p) ((ExaPixmapPrivPtr)dixLookupPrivate(&(p)->devPrivates, exaPixmapPrivateKey))
-#define ExaSetPixmapPriv(p,a) dixSetPrivate(&(p)->devPrivates, exaPixmapPrivateKey, a)
+#define ExaGetPixmapPriv(p) ((ExaPixmapPrivPtr)dixGetPrivateAddr(&(p)->devPrivates, exaPixmapPrivateKey))
 #define ExaPixmapPriv(p)	ExaPixmapPrivPtr pExaPixmap = ExaGetPixmapPriv(p)
 
 #define EXA_RANGE_PITCH (1 << 0)
-- 
1.7.4.1



More information about the xorg-devel mailing list