On Tuesday, 3 de January de 2012 18.29.11, [email protected] wrote:
> > I solved the problem by using a special compiler, which was already
> > present in src/gui/gui.pro. qmake doesn't look into SSE2_SOURCES,
> > AVX_SOURCES, NEON_SOURCES.
>
> Right, that would work too. (as would a separate library
>
> Now, are the extra-compilers specified in such a way that it also works
> under MSVC and MinGW?

Yes and no.

Yes, they've been there for ages. The only modification I made was to *not* add
-msse2, -mssse3, -mavx, -mfpu=neon if the default compiler / user flags already
included those. That's mainly for the case that adding -msse2 would override a
previous -mssse3, for example (MeeGo's case).

Yes, because they are wrapped under:
neon:*-g++* {
}

and
    win32-g++*|!win32:!win32-icc*:!macx-icc* {
    }

And yes because the "sse2" and "avx" flags are set by configure.exe with checks:
    else if (part == "SSE2")
        available = findFile("emmintrin.h");
    else if (part == "AVX")
        available = findFile("immintrin.h");

So the builds are not broken on Windows. But no because that basically means:
 - MSVC never compiles with improved code. MSVC has supported the /arch:SSE2
option for some time and MSVC 2010 has /arch:AVX too
 - the check for SSSE3 is missing (file timmintrin.h)
 - the check for AVX2 is impossible, since it requires compiling code
 - cross compilation from Windows for ARM never enables the Neon code because
the Neon checks are missing

--
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center
     Intel Sweden AB - Registration Number: 556189-6027
     Knarrarnäsgatan 15, 164 40 Kista, Stockholm, Sweden

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to