[Pixman] ARM iwmmxt patches

Soeren Sandmann sandmann at cs.au.dk
Wed Aug 31 05:12:13 PDT 2011


Matt Turner <mattst88 at gmail.com> writes:

> I've been trying to figure out if the ARM iwmmxt inline assembly makes
> any difference at all. I think the conclusion is that it does not.
> Updated code is here:
> http://cgit.freedesktop.org/~mattst88/pixman/log/?h=iwmmxt-optimizations

You mean that inline assembly in mmx_fill() doesn't make a difference?

> See
> http://people.freedesktop.org/~mattst88/pixman-iwmmxt-benchdata.txt

The lowlevel-blt benchmark doesn't hit the fill and blt routines at all,
so this data doesn't support the conclusion that inline assembly in
mmx_fill() and mmx_blt() makes no difference.

> Never does using inline assembly seem to make any sort of meaningful
> difference over simply compiling pixman-mmx.c for ARM/iwmmxt. I tried
> checking the alignment in the 'wip' commit in the blt function to
> avoid a lot of unnecessary walign instructions, but as you can see
> from the benchmark results, it doesn't help anything.

The cairo-trace tests are better benchmarks to use in general because
they reflect real-world use. lowlevel-blt-bench really should only be
used for the case where you are optimizing a specific compositing
routine.


Soren


More information about the Pixman mailing list