[00/21] fb/mi diet and microtuning
Adam Jackson
ajax at redhat.com
Wed Oct 8 06:57:42 PDT 2014
Most of this is just removing driver-visible entrypoints from the ABI,
moving implementations closer to their consumers, and marking things static
where appropriate.
13 and 15 are a bit more interesting, removing "fast paths" that actually
end up being pessimizations. I'm a little hesitant about that; I've only
benchmarked the changes on relatively modern Intel CPUs. It's possible
that CPUs with a different memory latency hierarchy do in fact benefit
from special-casing the even paths. (I'm also making the assumption that
the "odd" code is a functional superset of the "even" code, which seems
plausible, but I've not verified that with xts yet.) Regrettably the
performance data I have on this is on a machine at home and I'm at XDC,
and it takes about an hour to do an appropriate x11perf run, so while I'll
happily come up with the data I don't have it immediately handy.
12 removes the 64-bit-wide path from fb. I had previously attempted to
make it build, but it seems not to be worth the effort.
text data bss dec hex filename
1805302 42330 62016 1909648 1d2390 hw/vfb/Xvfb.before
1796488 41882 62016 1900386 1cff62 hw/vfb/Xvfb.after
b/fb/Makefile.am | 2
b/fb/fb.h | 338 --------------------------
b/fb/fbbits.c | 12
b/fb/fbblt.c | 271 ---------------------
b/fb/fbbltone.c | 314 ++++++++++--------------
b/fb/fbfill.c | 84 ++++++
b/fb/fbgc.c | 83 ------
b/fb/fbglyph.c | 8
b/fb/fbline.c | 4
b/fb/fbpict.c | 10
b/fb/fbpict.h | 4
b/fb/fbpoint.c | 2
b/fb/fbpush.c | 4
b/fb/fbrop.h | 10
b/fb/fbseg.c | 22 -
b/fb/fbutil.c | 308 -----------------------
b/fb/wfbrename.h | 22 -
b/hw/xfree86/sdksyms.sh | 3
b/mi/Makefile.am | 11
b/mi/mi.h | 16 -
b/mi/miarc.c | 205 +++++++++++++++
b/mi/midash.c | 1
b/mi/mifillarc.c | 5
b/mi/mifillarc.h | 9
b/mi/mifpoly.h | 42 ---
b/mi/mipointer.c | 14 +
b/mi/mipoly.c | 619 +++++++++++++++++++++++++++++++++++++++++++++++-
b/mi/mipoly.h | 20 -
b/mi/miwideline.c | 526 ++++++++++++++++++++++++++++++++++++++++
b/mi/miwideline.h | 26 --
fb/fbstipple.c | 264 --------------------
fb/fbtile.c | 163 ------------
mi/micursor.c | 68 -----
mi/mifpolycon.c | 249 -------------------
mi/mipolycon.c | 235 ------------------
mi/mipolygen.c | 213 ----------------
mi/mipolyutil.c | 369 ----------------------------
mi/mispans.c | 526 ----------------------------------------
mi/mispans.h | 87 ------
39 files changed, 1593 insertions(+), 3576 deletions(-)
- ajax
More information about the xorg-devel
mailing list