From b6b3803b213787a04dfc7542caeb541a5535d90f Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Wed, 2 Mar 2016 14:00:20 +0100 Subject: Optimized fetchUntransformed RGB888 Reuses the optimized routines from qimage to make painting RGB888 images faster on SSSE3 and NEON. Change-Id: I99116b318322ba4cb0ddc2cb90bcf17a0350ef99 Reviewed-by: Gunnar Sletta --- src/gui/painting/qdrawhelper_neon.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/gui/painting/qdrawhelper_neon.cpp') diff --git a/src/gui/painting/qdrawhelper_neon.cpp b/src/gui/painting/qdrawhelper_neon.cpp index 7dbfa4fa9c..f5b794ace6 100644 --- a/src/gui/painting/qdrawhelper_neon.cpp +++ b/src/gui/painting/qdrawhelper_neon.cpp @@ -1061,6 +1061,16 @@ const uint * QT_FASTCALL qt_fetch_radial_gradient_neon(uint *buffer, const Opera return qt_fetch_radial_gradient_template,uint>(buffer, op, data, y, x, length); } +extern void QT_FASTCALL qt_convert_rgb888_to_rgb32_neon(quint32 *dst, const uchar *src, int len); + +const uint * QT_FASTCALL qt_fetchUntransformed_888_neon(uint *buffer, const Operator *, const QSpanData *data, + int y, int x, int length) +{ + const uchar *line = data->texture.scanLine(y) + x * 3; + qt_convert_rgb888_to_rgb32_neon(buffer, line, length); + return buffer; +} + QT_END_NAMESPACE #endif // __ARM_NEON__ -- cgit v1.2.3