summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qdrawhelper_ssse3.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright year to 2011.Jason McDonald2011-01-101-1/+1
| | | | Reviewed-by: Trust Me
* Doc: Fixing typoSergio Ahumada2011-01-071-1/+1
|
* Remove the memory safety for the first scanline of the SSSE3 blendingBenjamin Poulain2010-09-131-72/+3
| | | | | | | | | Memory is allocated on 16 bytes boundaries. We can do the aligned load without risking a invalid memory access. This simplify the code. Reviewed-by: Samuel Rødal
* Undefined SSE symbols when crosscompiling Qt on PPC.Benjamin Poulain2010-08-311-2/+1
| | | | | | | | | | Qt does not build on PowerPC when compiling for both x86 and PPC on Mac. The compiler is invoked only once for both architecture so the defines are there in order to get the optimized path for x86. Those defines needs to be removed from the compilation environment when the target is set to PPC by GCC. Reviewed-by: Kent Hansen
* Fix the blending of ARGB_PM image when using palignr to load the dataBenjamin Poulain2010-08-171-15/+5
| | | | | | | | | | The data loaded for the first were incorrect because the offset was incorrect. The correct offset should be up to the alignment point. Instead of trying to load a temporary array, we just move one vector further since we know reading there is always safe. Reviewed-by: Andreas Kling
* Implement the general blending of ARGB32_pm with SSSE3Benjamin Poulain2010-08-161-0/+263
SSSE3 provides two tools to improve the blending speed over SSE2: -palignr -byte permutation The alignement is enforced on src and dst with palignr to always make aligned access. The extraction of the alpha mask is done with a byte permutation in order to save two instructions per cycle. On Atom, this patch gives between 0% (aligned src) to 10% of improvement (unaligned 4 and 12 bytes). On Core 2, this patch gives consistently 8% to 10% of improvement for every miss-alignment. Reviewed-by: Samuel Rødal