Comment 26 for bug 664431

Revision history for this message
Ricardo Salveti (rsalveti) wrote :

@Dave: this was basically the previous behavior, that I didn't want to change because it's outside the scope of this bug.

From current Qt in Maverick:
...
#elif defined(QT_HAVE_IWMMXT)
    // runtime detection only available when running as a previlegied process
    static const bool doIWMMXT = !qgetenv("QT_NO_IWMMXT").toInt();
    features = doIWMMXT ? IWMMXT : 0;
    return features;
#elif defined(QT_HAVE_NEON)
    static const bool doNEON = !qgetenv("QT_NO_NEON").toInt();
    features = doNEON ? NEON : 0;
    return features;
#else
    features = 0;
...

Upstream doesn't support the QT_NO_* flags anymore, but when probing the default values you can see:
...
#if defined(QT_HAVE_IWMMXT)
    // runtime detection only available when running as a previlegied process
    features = IWMMXT;
#elif defined(QT_HAVE_NEON)
    features = NEON;
#endif
...

While porting the fix we can't just drop the QT_NO_* flags, so I just let it as the previous code, plus adding neon autodetection code path.