diff -r 206a6eaaeb71 -r 0659d0e1a03c kernel/eka/euser/us_func.cpp --- a/kernel/eka/euser/us_func.cpp Mon Oct 18 15:31:10 2010 +0100 +++ b/kernel/eka/euser/us_func.cpp Wed Oct 20 13:58:28 2010 +0100 @@ -2020,8 +2020,10 @@ /* RVCT 3.1 and 4.0 read past the end of arrays when unrolling loops. * This only happens when using -O3 -Otime, so force to -O2. */ +#if __ARMCC_VERSION >= 310000 #pragma push #pragma O2 +#endif /** Performs a CCITT CRC-32 checksum on the specified data. @@ -2042,4 +2044,6 @@ crc = (crc >> 8) ^ CrcTab32[(crc ^ *p++) & 0xff]; aCrc = crc; } +#if __ARMCC_VERSION >= 310000 #pragma pop +#endif