diff options
Diffstat (limited to 'src/gui/painting/qdrawhelper.cpp')
-rw-r--r-- | src/gui/painting/qdrawhelper.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/gui/painting/qdrawhelper.cpp b/src/gui/painting/qdrawhelper.cpp index 5854008ea3..8f5eb4d095 100644 --- a/src/gui/painting/qdrawhelper.cpp +++ b/src/gui/painting/qdrawhelper.cpp @@ -6328,7 +6328,7 @@ void qt_memfill32(quint32 *dest, quint32 color, int count) template<QtPixelOrder> const uint *QT_FASTCALL convertA2RGB30PMFromARGB32PM_sse4(uint *buffer, const uint *src, int count, const QPixelLayout *, const QRgb *); #endif -void qInitDrawhelperAsm() +static void qInitDrawhelperFunctions() { #ifdef __SSE2__ qDrawHelper[QImage::Format_RGB32].bitmapBlit = qt_bitmapblit32_sse2; @@ -6523,4 +6523,19 @@ void qInitDrawhelperAsm() #endif // QT_COMPILER_SUPPORTS_MIPS_DSP || QT_COMPILER_SUPPORTS_MIPS_DSPR2 } +extern void qInitBlendFunctions(); +class DrawHelperInitializer { +public: + DrawHelperInitializer() + { + // Set up basic blend function tables. + qInitBlendFunctions(); + // Set up architecture optimized methods for the current machine. + qInitDrawhelperFunctions(); + } +}; + +// Ensure initialization if this object file is linked. +static DrawHelperInitializer drawHelperInitializer; + QT_END_NAMESPACE |