https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92860
--- Comment #87 from Martin Liška <marxin at gcc dot gnu.org> --- Self-contained test-case: $ cat options-save2.ii char flags[16]; int one = 1, two = 2; void __attribute__ ((noipa)) save() { flags[0] = one; flags[1] = one; flags[2] = one; flags[3] = one; flags[4] = one; flags[5] = one; flags[6] = one; flags[7] = one; flags[8] = one; flags[9] = one; flags[10] = one; flags[11] = one; flags[12] = one; flags[13] = one; flags[14] = one; flags[15] = two; } int main() { save (); __builtin_printf ("flags[0]=%d, flags[15]=%d\n", flags[0], flags[15]); if (flags[15] != 2) __builtin_abort (); return 0; }