I've been working on vc4 X performance again, particularly looking at dragging windows with xcompmgr -c running. I'll be sending a separate patch to accelerate a8 rendering on GLES2-class renderers, but even with that things are crazy slow. I think at this point the major problem is the crazy mass of code from rel_sampler().
This series was some cleanups as I worked toward that, and finally one patch that should reduce the cost of rel_sampler on non-control-flow hardware (I see fewer texture sampler requests on vc4). No performance change on i965, but I hope that vc4 is in better shape after it. (I'm away from the hardware at the moment, but should test later today). Eric Anholt (19): ephyr: Make sure we have GLX_ARB_create_context before calling it. glamor: Label programs before linking them. glamor: Clarify when Render fallbacks happen due to an unsupported op. glamor: Drop dead *_from_x_coord_y() functions. glamor: Rename the *y_inverted helpers to not say "inverted". glamor: Drop comment about dead yInverted flag. glamor: Drop dead glamor_pict_format_is_compatible(). glamor: Set up XV sampler uniforms once at program build time. glamor: Simplify XV vertex setup. glamor: Convert XV to using glamor_program.c. glamor: Drop extra SHADER_IN type for no mask present. glamor: Reuse the glamor_program_alpha_* enums for Render. glamor: Simplify the pixmap box looping. glamor: Drop extra conditionals for large pixmap handling. glamor: Clarify some logic in RepeatFix handling. glamor: Clean up formatting of RepeatFix shader code. glamor: Clarify how the repeat values being passed around work. glamor: Cut down a bunch of conditional handling for RepeatFix. glamor: Flip around conditionals in RepeatNone fixups. glamor/glamor_composite_glyphs.c | 10 +- glamor/glamor_copy.c | 15 +-- glamor/glamor_core.c | 22 ++-- glamor/glamor_dash.c | 6 +- glamor/glamor_glyphblt.c | 12 +-- glamor/glamor_lines.c | 6 +- glamor/glamor_points.c | 7 +- glamor/glamor_priv.h | 35 +++--- glamor/glamor_rects.c | 7 +- glamor/glamor_render.c | 161 +++++++++++++--------------- glamor/glamor_segs.c | 6 +- glamor/glamor_spans.c | 23 ++-- glamor/glamor_text.c | 8 +- glamor/glamor_transfer.c | 16 +-- glamor/glamor_transform.c | 9 +- glamor/glamor_transform.h | 3 +- glamor/glamor_utils.h | 70 ++++-------- glamor/glamor_xv.c | 213 +++++++++++++++++-------------------- hw/kdrive/ephyr/ephyr_glamor_glx.c | 34 +++--- 19 files changed, 298 insertions(+), 365 deletions(-) -- 2.6.4 _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
