https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111376
--- Comment #2 from YunQiang Su <syq at gcc dot gnu.org> --- (In reply to YunQiang Su from comment #1) > RISC-V has this problem, too. > Maybe we can try to combine it in `combine` pass, while it may be not easy. > It may break some code like: > > ``` > int f1(); > int f2(); > > int f(int a) { > int p = (a & 0x80000); > if (p) > return p; > else > return f2(); > } > ``` > > And in fact your patch also break it. Ohh, this comment is not correct....