xserver-multidpi/glamor
Eric Anholt d310d566b1 glamor: Extract the streamed vertex data code used by Render.
We should be uploading any vertex data using this kind of upload
style, since it saves a bunch of extra copies of our vertex data.

v2:
  - Add a simple comment about what the function does.
  - Use get_vbo_space()'s return in trapezoids, instead of dereffing
    glamor_priv->vb (by Markus Wick).
  - Fix the double-unmapping by moving put_vbo_space() outside of
    flush_composite_rects().
  - Remove the rest of the composite_vbo_offset usage, and just always
    use get_vbo_space()'s return value.
v3:
  - Fix failure to put_vbo_space in traps when no prims were
    generated.
  - Unbind the VBO from put_vbo_space().  Keeps callers from
    forgetting to do so.
v4:
  - Split out some changes into the previous 3 commits while trying to
    track down a regression.
  - Fix regression due to rebase fail where glamor_priv->vbo_offset
    wasn't incremented.
v5:
  - Fix GLES2 VBO sizing.
  - Add a comment about resize behavior.
  - Move glamor_vbo.c init code to glamor_vbo.c from
    glamor_render.c. (Derived from Markus's changes, but the GLES2 fix
    dropped almost all of the code in the functions).
v6:
  - Drop the initial BufferData on GLES2 (it happens at put() time).
  - Don't forget to set vbo_offset to the size on GLES2.
  - Use char * instead of void * in the cast to return the vbo_offset.
  - Resize the default FBO to 512kb, to be similar to previous
    behavior.  +1.66124% +/- 0.284223% (n=679) on aa10text.

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Markus Wick <markus at selfnet.de>
2014-03-10 13:57:21 -07:00
..
glamor_addtraps.c glamor: Fix some indent damage of putting a ' ' after the '*' for pointers. 2014-01-27 09:30:47 -08:00
glamor_compositerects.c glamor: Remove an extra copy of RegionNil(). 2014-01-27 09:30:47 -08:00
glamor_context.h glamor: Put in a pluggable context switcher for GLX versus EGL. 2014-02-14 18:30:01 -08:00
glamor_copyarea.c glamor: Add a screen argument to drop an ifdef from glamor_set_alu(). 2014-02-14 18:30:01 -08:00
glamor_copyplane.c glamor: Apply x-indent.sh. 2014-01-27 09:30:47 -08:00
glamor_copywindow.c glamor: Apply x-indent.sh. 2014-01-27 09:30:47 -08:00
glamor_core.c glamor: Rename glamor_get/put_dispatch to glamor_get/put_context. 2014-02-14 18:29:56 -08:00
glamor_debug.h glamor: Apply x-indent.sh. 2014-01-27 09:30:47 -08:00
glamor_egl_stubs.c glamor: Put in a pluggable context switcher for GLX versus EGL. 2014-02-14 18:30:01 -08:00
glamor_egl.c glamor: Add support for DRI3. 2014-03-05 13:10:24 -08:00
glamor_eglmodule.c xorg: Connect up the glamor XV code, xorg DDX-only for now. 2014-03-05 13:10:20 -08:00
glamor_fbo.c glamor: Rename glamor_get/put_dispatch to glamor_get/put_context. 2014-02-14 18:29:56 -08:00
glamor_fill.c glamor: Add a screen argument to drop an ifdef from glamor_set_alu(). 2014-02-14 18:30:01 -08:00
glamor_fillspans.c glamor: Apply x-indent.sh. 2014-01-27 09:30:47 -08:00
glamor_getimage.c glamor: Apply x-indent.sh. 2014-01-27 09:30:47 -08:00
glamor_getspans.c glamor: Silence warnings for non-debug builds. 2014-01-27 09:30:47 -08:00
glamor_glx.c glamor: Put in a pluggable context switcher for GLX versus EGL. 2014-02-14 18:30:01 -08:00
glamor_glyphblt.c glamor: Convert use of the old "pointer" typedef to "void *". 2014-01-27 09:30:47 -08:00
glamor_glyphs.c glamor: Rename glamor_get/put_dispatch to glamor_get/put_context. 2014-02-14 18:29:56 -08:00
glamor_gradient.c glamor: Fix a mismatched glamor_get/put_context(). 2014-03-10 13:57:21 -07:00
glamor_largepixmap.c glamor: Fix some indent damage of putting a ' ' after the '*' for pointers. 2014-01-27 09:30:47 -08:00
glamor_picture.c glamor: Pass pixmaps around to unifdef glamor_iformat_for_depth(). 2014-02-14 18:30:01 -08:00
glamor_pixmap.c glamor: Fix a spelling mistake in GLAMOR_PIXMAP_FBO_NOT_EXACT_SIZE. 2014-03-10 11:06:27 -07:00
glamor_polyfillrect.c glamor: Apply x-indent.sh. 2014-01-27 09:30:47 -08:00
glamor_polylines.c glamor: Apply x-indent.sh. 2014-01-27 09:30:47 -08:00
glamor_polyops.c glamor: Fix some indent damage of putting a ' ' after the '*' for pointers. 2014-01-27 09:30:47 -08:00
glamor_priv.h glamor: Extract the streamed vertex data code used by Render. 2014-03-10 13:57:21 -07:00
glamor_putimage.c glamor: Drop useless glEnable/glDisable(GL_TEXTURE_2D) calls. 2014-02-14 18:30:01 -08:00
glamor_render.c glamor: Extract the streamed vertex data code used by Render. 2014-03-10 13:57:21 -07:00
glamor_setspans.c glamor: Apply x-indent.sh. 2014-01-27 09:30:47 -08:00
glamor_tile.c glamor: Add a screen argument to drop an ifdef from glamor_set_alu(). 2014-02-14 18:30:01 -08:00
glamor_trapezoid.c glamor: Extract the streamed vertex data code used by Render. 2014-03-10 13:57:21 -07:00
glamor_triangles.c glamor: Apply x-indent.sh. 2014-01-27 09:30:47 -08:00
glamor_utils.h glamor: Fix a spelling mistake in GLAMOR_PIXMAP_FBO_NOT_EXACT_SIZE. 2014-03-10 11:06:27 -07:00
glamor_vbo.c glamor: Extract the streamed vertex data code used by Render. 2014-03-10 13:57:21 -07:00
glamor_window.c glamor: Apply x-indent.sh. 2014-01-27 09:30:47 -08:00
glamor_xv.c xorg: Connect up the glamor XV code, xorg DDX-only for now. 2014-03-05 13:10:20 -08:00
glamor.c glamor: Extract the streamed vertex data code used by Render. 2014-03-10 13:57:21 -07:00
glamor.h glamor: Extract the streamed vertex data code used by Render. 2014-03-10 13:57:21 -07:00
Makefile.am glamor: Extract the streamed vertex data code used by Render. 2014-03-10 13:57:21 -07:00