diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2019-01-08 12:27:31 -0800 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@intel.com> | 2019-01-09 22:15:41 +0000 |
commit | f370410097f8cb8d8fdf6174b799497fe7fe0adf (patch) | |
tree | 170a4d3a103ca931d1584ed5401be0f3337b0b35 /src/gui/painting/qdrawhelper_sse4.cpp | |
parent | c8c5ff19de1c34a99b8315e59015d115957b3584 (diff) |
Add AVX2 version of ARGB->ARGB32PM
Similar to the previous commit. This also removes the SSE4
implementations from Qt builds that use AVX2 throughout.
Change-Id: I251f00d706d646ed87b4fffd1577f96ed52a4cf4
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/gui/painting/qdrawhelper_sse4.cpp')
-rw-r--r-- | src/gui/painting/qdrawhelper_sse4.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gui/painting/qdrawhelper_sse4.cpp b/src/gui/painting/qdrawhelper_sse4.cpp index 9e3e6682bb..e4b93e8511 100644 --- a/src/gui/painting/qdrawhelper_sse4.cpp +++ b/src/gui/painting/qdrawhelper_sse4.cpp @@ -45,6 +45,7 @@ QT_BEGIN_NAMESPACE +#ifndef __AVX2__ template<bool RGBA> static void convertARGBToARGB32PM_sse4(uint *buffer, const uint *src, int count) { @@ -142,6 +143,7 @@ static void convertARGBToRGBA64PM_sse4(QRgba64 *buffer, const uint *src, int cou buffer[i] = QRgba64::fromArgb32(s).premultiplied(); } } +#endif // __AVX2__ static inline __m128 Q_DECL_VECTORCALL reciprocal_mul_ps(__m128 a, float mul) { @@ -308,6 +310,7 @@ static inline void convertARGBFromRGBA64PM_sse4(uint *buffer, const QRgba64 *src } } +#ifndef __AVX2__ void QT_FASTCALL convertARGB32ToARGB32PM_sse4(uint *buffer, int count, const QVector<QRgb> *) { convertARGBToARGB32PM_sse4<false>(buffer, buffer, count); @@ -359,6 +362,7 @@ const QRgba64 *QT_FASTCALL fetchRGBA8888ToRGBA64PM_sse4(QRgba64 *buffer, const u convertARGBToRGBA64PM_sse4<true>(buffer, reinterpret_cast<const uint *>(src) + index, count); return buffer; } +#endif // __AVX2__ void QT_FASTCALL storeRGB32FromARGB32PM_sse4(uchar *dest, const uint *src, int index, int count, const QVector<QRgb> *, QDitherInfo *) |