https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79045
Uroš Bizjak <ubizjak at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2017-01-10 Component|target |middle-end Ever confirmed|0 |1 --- Comment #1 from Uroš Bizjak <ubizjak at gmail dot com> --- It is middle-end that expands f1 to: 9: {r92:QI=r88:QI&r90:QI;clobber flags:CC;} 10: flags:CCZ=cmp(r92:QI,0) 11: pc={(flags:CCZ==0)?L17:pc} and f2 to: 9: flags:CCZ=cmp(r88:QI,0) 10: pc={(flags:CCZ==0)?L18:pc} 11: flags:CCZ=cmp(r90:QI,0) 12: pc={(flags:CCZ==0)?L18:pc} RTL optimizers are unable to optimize f2 further.