https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103006
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2021-10-30 Ever confirmed|0 |1 --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Confirmed, here is one which is broken at -O1 and -O2 but ok at -O3: __attribute__((noipa)) void ff(void){} int a, *b, c, e, f; __attribute__((always_inline)) static inline void g() { int *d[7]; d[6] = b = (int *)d; ff(); } __attribute__((noinline)) int i() { for (c = 0; c < 2; c++) { long h[6][2]; for (e = 0; e < 6; e++) for (f = 0; f < 2; f++) h[e][f] = 1; if (c) { g(); return h[3][0]; } } return 0; } int main() { if (i() != 1) __builtin_abort (); return 0; }