Index: lib/ubsan/ubsan_value.cc =================================================================== --- lib/ubsan/ubsan_value.cc +++ lib/ubsan/ubsan_value.cc @@ -83,7 +83,7 @@ #endif case 32: { float Value; -#if defined(__BIG_ENDIAN__) +#if defined(__BIG_ENDIAN__) && !defined(__mips__) // For big endian the float value is in the second 4 bytes // instead of the first 4 bytes. internal_memcpy(&Value, ((const char*)&Val)+4, 4);