https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102306
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target| |sparc-elf Status|UNCONFIRMED |NEW Keywords| |wrong-code Component|rtl-optimization |target Last reconfirmed| |2021-09-13 Ever confirmed|0 |1 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- I would think it's sparc specific for now. Confirmed with simplified void c(void); void test(volatile unsigned char * a) { char b = *a; if (!b) return; if (b & 2) c(); }