MIPS: DSPr2: Added over_n_8888_8888_ca and over_n_8888_0565_ca fast paths.
authorNemanja Lukic <nemanja.lukic@rt-rk.com>
Sun, 11 Mar 2012 17:52:25 +0000 (18:52 +0100)
committerSøren Sandmann Pedersen <ssp@redhat.com>
Tue, 13 Mar 2012 22:04:31 +0000 (18:04 -0400)
commitd2ee5631ae42d031289ae80352e02bafa3f06ed4
tree32cd8cea842879a104679bc403c1c10f6c978b96
parenta069da6c66da407cc52e1e92321d69c68fd6beb5
MIPS: DSPr2: Added over_n_8888_8888_ca and over_n_8888_0565_ca fast paths.

Performance numbers before/after on MIPS-74kc @ 1GHz

Referent (before):

lowlevel-blt-bench:
     over_n_8888_8888_ca =  L1:   8.32  L2:   7.65  M:  6.38 ( 51.08%)  HT:  5.78  VT:  5.74  R:  5.84  RT:  4.39 (  37Kops/s)
     over_n_8888_0565_ca =  L1:   7.40  L2:   6.95  M:  6.16 ( 41.06%)  HT:  5.72  VT:  5.52  R:  5.63  RT:  4.28 (  36Kops/s)
cairo-perf-trace:
[ # ]  backend                         test   min(s) median(s) stddev. count
[ # ]    image: pixman 0.25.3
[  0]    image            xfce4-terminal-a1  138.223  139.070   0.33%    6/6
[ # ]  image16: pixman 0.25.3
[  0]  image16            xfce4-terminal-a1  132.763  132.939   0.06%    5/6

Optimized:

lowlevel-blt-bench:
     over_n_8888_8888_ca =  L1:  19.35  L2:  23.84  M: 13.68 (109.39%)  HT: 11.39  VT: 11.19  R: 11.27  RT:  6.90 (  47Kops/s)
     over_n_8888_0565_ca =  L1:  18.68  L2:  17.00  M: 12.56 ( 83.70%)  HT: 10.72  VT: 10.45  R: 10.43  RT:  5.79 (  43Kops/s)
cairo-perf-trace:
[ # ]  backend                         test   min(s) median(s) stddev. count
[ # ]    image: pixman 0.25.3
[  0]    image            xfce4-terminal-a1  130.400  131.720   0.46%    6/6
[ # ]  image16: pixman 0.25.3
[  0]  image16            xfce4-terminal-a1  125.830  126.604   0.34%    6/6
pixman/pixman-mips-dspr2-asm.S
pixman/pixman-mips-dspr2-asm.h
pixman/pixman-mips-dspr2.c
pixman/pixman-mips-dspr2.h