I sent a set of glamor bug fixes separately; these are just the patches needed to speed up core rendering operations with glamor.
Eric mentioned that GLSL 1.30 wasn't all that common yet, so I've added fallbacks to 1.20 for operations where that was possible, which includes everything other than the text functions and copy plane. The glyph functions are still accelerated, so you get reasonably fast text even still. I've done some touch-tests for performance with GLSL 1.20, and there's almost no difference from the 1.30 code; obviously loading primitive data into the GPU isn't a big deal. Four additions which set the stage: [PATCH 01/16] fb: Publish fbGlyphs and fbUnrealizeGlyph [PATCH 02/16] glamor: Compute supported GLSL version and save in [PATCH 03/16] glamor: Add simple upload/download functions in [PATCH 04/16] glamor: Replace fallback preparation code New rendering code, one subsystem at a time. Each of these also deletes the related previous code [PATCH 05/16] glamor: Add glamor_program based fill/set/get spans [PATCH 06/16] glamor: Add glamor_program based poly_fill_rect [PATCH 07/16] glamor: Use glamor_program for glamor_glyphblt [PATCH 08/16] glamor: Add glamor_program based poly_text and [PATCH 09/16] glamor: Add glamor_program based copy acceleration [PATCH 10/16] glamor: Use glamor_program for glamor_push_pixels [PATCH 11/16] glamor: Use glamor_program and GL_LINES for 0-width [PATCH 12/16] glamor: Add glamor_transfer based glamor_get_image and And a few clean ups after the rendering code was swapped: [PATCH 13/16] glamor: Replace glamor_solid_boxes and glamor_solid [PATCH 14/16] glamor: Remove 'tiling' shader code [PATCH 15/16] glamor: Remove stubbed-out glamor_stipple function Here's a patch which lets you (at compile time, by editing the source), turn off all Render acceleration for glamor and cause every thing to fall back to software. I've found this helpful when isolating problems in the Render acceleration code: [PATCH 16/16] glamor: Provide render fallbacks for debugging -keith _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
