Compiling 5.12.0 with vs 2015 Configure detects SSE up to 4.2 , and AVX up to AVX2
qdrawhelper_sse4.cpp C:\sdk\src\qt-everywhere-src-5.12.0\qtbase\src\gui\painting\qdrawhelper_sse4.cpp(164): error C3861: 'qUnpremultiply_sse4': identifier not found C:\sdk\src\qt-everywhere-src-5.12.0\qtbase\src\gui\painting\qdrawhelper_sse4.cpp(290): note: see reference to function template instantiation 'void convertARGBFromARGB32PM_sse4<false,true>(uint *,const uint *,int)' being compiled C:\sdk\src\qt-everywhere-src-5.12.0\qtbase\src\gui\painting\qdrawhelper_sse4.cpp(258): error C2065: 'qConvertRgba64ToRgb32_sse4': undeclared identifier C:\sdk\src\qt-everywhere-src-5.12.0\qtbase\src\gui\painting\qdrawhelper_sse4.cpp(326): note: see reference to function template instantiation 'void convertARGBFromRGBA64PM_sse4<false>(uint *,const QRgba64 *,int)' being compiled C:\sdk\src\qt-everywhere-src-5.12.0\qtbase\src\gui\painting\qdrawhelper_sse4.cpp(258): warning C4804: '<': unsafe use of type 'bool' in operation C:\sdk\src\qt-everywhere-src-5.12.0\qtbase\src\gui\painting\qdrawhelper_sse4.cpp(320): error C2065: 'qConvertArgb32ToA2rgb30_sse4': undeclared identifier C:\sdk\src\qt-everywhere-src-5.12.0\qtbase\src\gui\painting\qdrawhelper_sse4.cpp(351): note: see reference to function template instantiation 'void storeA2RGB30PMFromARGB32PM_sse4<PixelOrderBGR>(uchar *,const uint *,int,int,const QVector<uint> *,QDitherInfo *)' being compiled It seems that code of the cpp that is compiled "if defined QT_COMPILER_SUPPORTS_SSE4_1" (present in my qconfig.h) references code of qdrawingprimitive_sse2_p.h that is defined "if QT_COMPILER_SUPPORTS_HERE(SSE4_1)" (absent because __SSE_4_1__ is not defined in qsimd_p.h, because configure does not add /arch:avx on the command line) Adding /arch:avx, or replacing the #if QT_COMPILER_SUPPORTS_HERE(SSE4_1) by #if defined QT_COMPILER_SUPPORTS_SSE4_1. The SSE4 test of configure succeeds without using -arch:avx I did not pass any cpu-specific type flags to configure, and i am not sure i want to. What is the proper fix of the cpu checks and flags that will make this build, without making the code dependant on avx or SSE4.1? _______________________________________________ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest