diff options
author | Eric Anholt <eric@anholt.net> | 2009-07-09 23:56:22 -0700 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2009-07-22 09:16:00 -0700 |
commit | 22f7cbc32b70a89d55c79bbea39fb10c50a310ec (patch) | |
tree | 41eb43589bc82afbf4995e324f550ffe81d2cad8 /uxa | |
parent | 5ef3db45e059df136162584d00d4b0b511456a33 (diff) |
uxa: Tell the driver when we're just going to immediately map the pixmap.
This lets the driver allocate a nice idle buffer object instead of a
busy one, reducing runtime of firefox-20090601 on my G45 from 50.7 (+/- .41%)
to 48.4 (+/- 1.1%).
Diffstat (limited to 'uxa')
-rw-r--r-- | uxa/uxa-render.c | 3 | ||||
-rw-r--r-- | uxa/uxa.h | 10 |
2 files changed, 12 insertions, 1 deletions
diff --git a/uxa/uxa-render.c b/uxa/uxa-render.c index 02373b0b..13128ed7 100644 --- a/uxa/uxa-render.c +++ b/uxa/uxa-render.c @@ -822,7 +822,8 @@ uxa_create_alpha_picture (ScreenPtr pScreen, } pPixmap = (*pScreen->CreatePixmap) (pScreen, width, height, - pPictFormat->depth, 0); + pPictFormat->depth, + UXA_CREATE_PIXMAP_FOR_MAP); if (!pPixmap) return 0; pPicture = CreatePicture (0, &pPixmap->drawable, pPictFormat, @@ -505,6 +505,16 @@ typedef struct _UxaDriver { /** @} */ +/** @name UXA CreatePixmap hint flags + * @{ + */ +/** + * Flag to hint that the first operation on the pixmap will be a + * prepare_access. + */ +#define UXA_CREATE_PIXMAP_FOR_MAP 0x20000000 +/** @} */ + uxa_driver_t * uxa_driver_alloc(void); |