[Bug rtl-optimization/105231] [12 Regression] ICE: in rtl_verify_bb_insns, at cfgrtl.cc:2797 (flow control insn inside a basic block) with custom flags since r12-4767-g81342e95827f77c0

segher at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Apr 13 12:38:29 GMT 2022


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105231

--- Comment #23 from Segher Boessenkool <segher at gcc dot gnu.org> ---
i3 is not always the sole instruction that results from the combine: if a
single insn does not work, two are tried, and one of them is placed at i2.
It's something to consider, it has to be checked for in a zillion places,
but it doesn't constrain you much in the end :-)

Btw, the only cases where combine splits blocks is when it has made an
unconditional trap; but in that case, it just ignores the second resulting
block (this is PR82386).  Also, combine *can* work on insns from different
BBs, in some cases (but always from the same EBB).


More information about the Gcc-bugs mailing list