evas: add common SSE3 blending functions/macro
authorlucas <lucas@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 30 Sep 2011 02:35:45 +0000 (02:35 +0000)
committerlucas <lucas@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 30 Sep 2011 02:35:45 +0000 (02:35 +0000)
commita5572a3ebe4a6d6c17d43140ed656cf8700a6da6
tree46d731611d74978876aab5491fd705d7feb33a35
parent47ed48e1b8496f03666f9e991beb70bcb4888ac1
evas: add common SSE3 blending functions/macro
mul_256_sse3
sub4_alpha_sse3
interp4_256_sse3
mul_sym_sse3
mul4_sym_sse3
mul3_sym_sse3

LOOP_ALIGNED_U1_A48_SSE3

__attribute__((always_inline)) is needed to coax GCC (< 4.6.0)
into inlining the common blend ops. Not inlining these functions
causes a steep performance penalty.

Patch by: Jim Kukunas <james.t.kukunas@linux.intel.com>

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@63698 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33
configure.ac
m4/efl_attribute.m4
src/lib/include/evas_blend_ops.h