https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104839
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Slightly adjusted testcase, so that it aborts on miscompilation: __attribute__((noipa)) short foo (void) { return -1; } __attribute__((noipa)) int bar (void) { short i = foo (); if (i == -2) return 2; long k = i; int j = -1; volatile long s = 300; if (k < 0) { k += s; if (k < 0) j = 0; } else if (k >= s) j = 0; if (j != -1) return 1; return 0; } int main () { if (bar () != 0) __builtin_abort (); return 0; }