https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118206
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Simplified testcase: __attribute__((noipa)) int foo (const void *x) { unsigned short b; __builtin_memcpy (&b, x, sizeof (short)); b = __builtin_bswap16 (b); if ((b % 31) != 0) return 1; if (((b >> 8) & 15) != 8) return 1; if ((b >> 12) > 7) return 1; return 0; } int main () { unsigned char a[8] = { 0x78, 0x9c }; if (sizeof (short) == 2 && foo (a) != 0) __builtin_abort (); }