https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65010
--- Comment #13 from Segher Boessenkool <segher at gcc dot gnu.org> --- (In reply to pthaugen from comment #11) > Another example to clean up. The back to back constant load/sign extend > sequence of rtl insns is created in each block by the block reordering pass > (.bbo) duplicating the common return block. (.bbro) That pass is way late, so you do not get any of the more basic optimisations after it :-( We either need to move this pass earlier, or do this before cprop3 and cse2 as well already, or somehow do a minimal version of all that basic stuff in bbro itself?