Details
-
Bug
-
Resolution: Done
-
Not Evaluated
-
5.2.1
-
None
-
Mac OS X 10.7.5, Xcode 4.3.3, llvm compiler (4.2.1), 10.6 & 10.7 SDKs.
-
3b00cc480400d47c59c29d3507c7fcdc9be2a489
Description
If configure is given the platform spec 'macx-llvm', simd components (e.g. qdrawhelper_sse2) aren't compiled leading to a link failure of libQ5Gui.dylib:
Undefined symbols for architecture x86_64: "convert_ARGB_to_ARGB_PM_inplace_sse2(QImageData*, QFlags<Qt::ImageConversionFlag>)", referenced from: qInitImageConversions() in qimage.o "convert_RGB888_to_RGB32_ssse3(QImageData*, QImageData const*, QFlags<Qt::ImageConversionFlag>)", referenced from: qInitImageConversions() in qimage.o "qt_memfill32_sse2(unsigned int*, unsigned int, int)", referenced from: qInitDrawhelperAsm() in qdrawhelper.o "qt_memfill16_sse2(unsigned short*, unsigned short, int)", referenced from: qInitDrawhelperAsm() in qdrawhelper.o "qt_bitmapblit32_sse2(QRasterBuffer*, int, int, unsigned int, unsigned char const*, int, int, int)", referenced from: qInitDrawhelperAsm() in qdrawhelper.o "qt_bitmapblit16_sse2(QRasterBuffer*, int, int, unsigned int, unsigned char const*, int, int, int)", referenced from: qInitDrawhelperAsm() in qdrawhelper.o "qt_scale_image_argb32_on_argb32_sse2(unsigned char*, int, unsigned char const*, int, QRectF const&, QRectF const&, QRect const&, int)", refe renced from: qInitDrawhelperAsm() in qdrawhelper.o "qt_blend_rgb32_on_rgb32_sse2(unsigned char*, int, unsigned char const*, int, int, int, int)", referenced from: qInitDrawhelperAsm() in qdrawhelper.o "qt_blend_argb32_on_argb32_sse2(unsigned char*, int, unsigned char const*, int, int, int, int)", referenced from: qInitDrawhelperAsm() in qdrawhelper.o "qt_fetch_radial_gradient_sse2(unsigned int*, Operator const*, QSpanData const*, int, int, int)", referenced from: qInitDrawhelperAsm() in qdrawhelper.o "qt_blend_argb32_on_argb32_ssse3(unsigned char*, int, unsigned char const*, int, int, int, int)", referenced from: qInitDrawhelperAsm() in qdrawhelper.o "_qt_functionForMode_SSE2", referenced from: qInitDrawhelperAsm() in qdrawhelper.o "_qt_functionForModeSolid_SSE2", referenced from: qInitDrawhelperAsm() in qdrawhelper.o ld: symbol(s) not found for architecture x86_64 collect2: ld returned 1 exit status
Problem is in mkspecs/features/simd.prf which fails to match the project spec and doesn't generate the necessary compiler directives for SSE2_SOURCES, etc.