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)
commit8cc398f2ad934765c14e78c4ecc1f6860937b296
tree46d731611d74978876aab5491fd705d7feb33a35
parent96efecea83294167ca0122f7b08f6bccc0a30374
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: http://svn.enlightenment.org/svn/e/trunk/evas@63698 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33
configure.ac
m4/efl_attribute.m4
src/lib/include/evas_blend_ops.h