[PATCH xserver 00/19] glamor: Cleanups all over

Eric Anholt eric at anholt.net
Wed Jan 27 17:56:29 PST 2016

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(-)


More information about the xorg-devel mailing list