summaryrefslogtreecommitdiffstats
path: root/src/gui/image/qimage.cpp
diff options
context:
space:
mode:
authorBenjamin Poulain <benjamin.poulain@nokia.com>2010-08-05 14:47:54 +0200
committerBenjamin Poulain <benjamin.poulain@nokia.com>2010-08-06 19:21:02 +0200
commita0f155cdaf641d92acc8b61be89b96319d16ccba (patch)
treea9f5174a3c9e82e7fe931d335475b11219eab8b8 /src/gui/image/qimage.cpp
parentd81ab877bc4424d918c400af3f65509f80f22f67 (diff)
Do the conversion from RGB888 to RGB32 using Neon
Doing the conversion with Neon is 700% faster. Help by Thiago Macieira on vacation. Reviewed-by: Thiago Macieira
Diffstat (limited to 'src/gui/image/qimage.cpp')
-rw-r--r--src/gui/image/qimage.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gui/image/qimage.cpp b/src/gui/image/qimage.cpp
index cb834c04c3..ac148eec31 100644
--- a/src/gui/image/qimage.cpp
+++ b/src/gui/image/qimage.cpp
@@ -3769,6 +3769,14 @@ void qInitImageConversions()
converter_map[QImage::Format_RGB888][QImage::Format_ARGB32_Premultiplied] = convert_RGB888_to_RGB32_ssse3;
}
#endif
+#ifdef QT_HAVE_NEON
+ if (features & NEON) {
+ extern void convert_RGB888_to_RGB32_neon(QImageData *dest, const QImageData *src, Qt::ImageConversionFlags);
+ converter_map[QImage::Format_RGB888][QImage::Format_RGB32] = convert_RGB888_to_RGB32_neon;
+ converter_map[QImage::Format_RGB888][QImage::Format_ARGB32] = convert_RGB888_to_RGB32_neon;
+ converter_map[QImage::Format_RGB888][QImage::Format_ARGB32_Premultiplied] = convert_RGB888_to_RGB32_neon;
+ }
+#endif
}
/*!