commit f8ad02fecdb7b6f91bab77cc154a246bd719ac20 Author: Alan Lawrence Date: Thu Apr 9 10:54:40 2015 +0100 Fix native_interpret_real for HFmode floats on Bigendian with UNITS_PER_WORD>=4 (with missing space) diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 6d085b1..52bc8e9 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -7625,7 +7625,7 @@ native_interpret_real (tree type, const unsigned char *ptr, int len) offset += byte % UNITS_PER_WORD; } else - offset = BYTES_BIG_ENDIAN ? 3 - byte : byte; + offset = BYTES_BIG_ENDIAN ? MIN (3, total_bytes - 1) - byte : byte; value = ptr[offset + ((bitpos / BITS_PER_UNIT) & ~3)]; tmp[bitpos / 32] |= (unsigned long)value << (bitpos & 31);