https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112758
--- Comment #14 from Greg McGary <gkm at rivosinc dot com> --- I bisected to here for the commit that broke the non-Zbs case: https://github.com/gcc-mirror/gcc/commit/2e886eef7f2b5aadb00171af868f0895b647c3a4 ... and here for Zbs case: https://github.com/gcc-mirror/gcc/commit/4e1e0d79ecbe8727cb69d4cd97b20c71caaefafc Note that the Zbs break happens with the commit that introduces Zbs handling, i.e., it never worked with Zbs from the beginning. In the non-Zbs case, it was the introduction of the insn_and_split pattern for single-insn materialization of negative constants that allows the combiner to create the problematic insn.