mirror of
https://github.com/X11Libre/xserver.git
synced 2026-09-28 21:33:09 +00:00
glamor: Add the glyph cache from UXA (de-camelCased).
This doesn't yet have an optimized glamor_composite_rects() implementation, but it does triple the speed of x11perf -aa10text.
This commit is contained in:
parent
7e6432e7b9
commit
f4a3194837
5 changed files with 975 additions and 0 deletions
|
|
@ -222,6 +222,8 @@ glamor_init(ScreenPtr screen)
|
|||
ps->Composite = glamor_composite;
|
||||
glamor_priv->saved_trapezoids = ps->Trapezoids;
|
||||
ps->Trapezoids = glamor_trapezoids;
|
||||
glamor_priv->saved_glyphs = ps->Glyphs;
|
||||
ps->Glyphs = glamor_glyphs;
|
||||
#endif
|
||||
|
||||
glamor_init_solid_shader(screen);
|
||||
|
|
@ -230,6 +232,8 @@ glamor_init(ScreenPtr screen)
|
|||
glamor_init_composite_shaders(screen);
|
||||
glamor_init_finish_access_shaders(screen);
|
||||
|
||||
glamor_glyphs_init(screen);
|
||||
|
||||
return TRUE;
|
||||
|
||||
fail:
|
||||
|
|
@ -246,6 +250,8 @@ glamor_fini(ScreenPtr screen)
|
|||
PictureScreenPtr ps = GetPictureScreenIfSet(screen);
|
||||
#endif
|
||||
|
||||
glamor_glyphs_fini(screen);
|
||||
|
||||
screen->CreateGC = glamor_priv->saved_create_gc;
|
||||
screen->CreatePixmap = glamor_priv->saved_create_pixmap;
|
||||
screen->DestroyPixmap = glamor_priv->saved_destroy_pixmap;
|
||||
|
|
@ -255,5 +261,7 @@ glamor_fini(ScreenPtr screen)
|
|||
screen->BitmapToRegion = glamor_priv->saved_bitmap_to_region;
|
||||
#ifdef RENDER
|
||||
ps->Composite = glamor_priv->saved_composite;
|
||||
ps->Trapezoids = glamor_priv->saved_trapezoids;
|
||||
ps->Glyphs = glamor_priv->saved_glyphs;
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue