Speed up bilinear interpolation.
authorAndré Tupinambá <andrelrt@gmail.com>
Sat, 19 Sep 2009 13:32:37 +0000 (09:32 -0400)
committerSøren Sandmann Pedersen <sandmann@redhat.com>
Mon, 26 Oct 2009 17:04:21 +0000 (13:04 -0400)
commit88323c5abe68906472049537b54b0e7eea343f43
tree2048231e5519690cdd31b88aebaff8541473f610
parentf0c157f888185279681bad305973f246dca2e535
Speed up bilinear interpolation.

Speed up bilinear interpolation by processing more than one component
at a time on 64 bit architectures, and by precomputing the dist{ixiy}
products on 32 bit architectures.

Previously bilinear interpolation for one pixel would take 24
multiplications. With this improvement it takes 12 on 64 bit, and 20
on 32 bit.

This is a small but consistent speedup on the swfdec-youtube
benchmark:

[ # ]  backend                         test   min(s) median(s) stddev. count
Before:
[  0]    image               swfdec-youtube   18.010   18.020   0.09%    4/5

After:
[  0]    image               swfdec-youtube   17.488   17.584   0.22%    5/6

Signed-off-by: Søren Sandmann Pedersen <sandmann@redhat.com>
configure.ac
pixman/pixman-bits-image.c