From b4de54fcefecbc3edb1ce747579f53243943f4cf Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Mon, 26 Aug 2013 17:03:58 -0700 Subject: [PATCH] Remove workarounds to old GCC bugs we had encountered on IRIX The check is bogus anyway. It was bogus when it was added. The bug is not because of "GCC on IRIX", it's simply a GCC bug and was probably tied to some GCC versions. It should have been reported and followed up. I don't even remember what GCC versions we had on the IRIX machines (plastkrakk, I can't remember the other two machine names). But I could bet they were GCC 3.4 or 4.0. Change-Id: I84ce4e1ad68bb0520b63c210f841e0c604dbd03a Reviewed-by: Robin Burchell --- src/corelib/tools/qlocale_tools.cpp | 22 ---------------------- src/network/access/qftp.cpp | 8 -------- 2 files changed, 30 deletions(-) diff --git a/src/corelib/tools/qlocale_tools.cpp b/src/corelib/tools/qlocale_tools.cpp index e695ac0f4d..072a35aa4e 100644 --- a/src/corelib/tools/qlocale_tools.cpp +++ b/src/corelib/tools/qlocale_tools.cpp @@ -1064,15 +1064,7 @@ static Bigint *pow5mult(Bigint *b, int k) static const int p05[3] = { 5, 25, 125 }; if ((i = k & 3) != 0) -#if defined(Q_OS_IRIX) && defined(Q_CC_GNU) - { - // work around a bug on 64 bit IRIX gcc - int *p = (int *) p05; - b = multadd(b, p[i-1], 0); - } -#else b = multadd(b, p05[i-1], 0); -#endif if (!(k >>= 2)) return b; @@ -1666,15 +1658,7 @@ Q_CORE_EXPORT double qstrtod(const char *s00, const char **se, bool *ok) k = nd < DBL_DIG + 1 ? nd : DBL_DIG + 1; rv = y; if (k > 9) -#if defined(Q_OS_IRIX) && defined(Q_CC_GNU) - { - // work around a bug on 64 bit IRIX gcc - double *t = (double *) tens; - rv = t[k - 9] * rv + z; - } -#else rv = tens[k - 9] * rv + z; -#endif bd0 = 0; if (nd <= DBL_DIG @@ -2570,13 +2554,7 @@ static char *_qdtoa( NEEDS_VOLATILE double d, int mode, int ndigits, int *decpt, else { #endif /* Generate ilim digits, then fix them up. */ -#if defined(Q_OS_IRIX) && defined(Q_CC_GNU) - // work around a bug on 64 bit IRIX gcc - double *t = (double *) tens; - eps *= t[ilim-1]; -#else eps *= tens[ilim-1]; -#endif for(i = 1;; i++, d *= 10.) { L = Long(d); d -= L; diff --git a/src/network/access/qftp.cpp b/src/network/access/qftp.cpp index 173f825b23..a77e1a643c 100644 --- a/src/network/access/qftp.cpp +++ b/src/network/access/qftp.cpp @@ -1042,18 +1042,10 @@ bool QFtpPI::processReply() if (static_cast(replyCode[0]) < 0 || replyCode[0] > 5) state = Failure; else -#if defined(Q_OS_IRIX) && defined(Q_CC_GNU) - { - // work around a crash on 64 bit gcc IRIX - State *t = (State *) table; - state = t[replyCode[0] - 1]; - } -#else if (replyCodeInt == 202) state = Failure; else state = table[replyCode[0] - 1]; -#endif break; default: // ignore unrequested message