https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116374
--- Comment #3 from Michael Matz <matz at gcc dot gnu.org> --- Ah yes, that assert checks that a previously unused elimination entry is still pristine. It might be that the entries in 'self_elim_table' need similar treatment, but that would need further testcases to be sure. So, this in addition: diff --git a/gcc/lra-eliminations.cc b/gcc/lra-eliminations.cc index 5bed259cffe..90e5c086d8e 100644 --- a/gcc/lra-eliminations.cc +++ b/gcc/lra-eliminations.cc @@ -1212,7 +1212,7 @@ update_reg_eliminate (bitmap insns_with_changed_offsets) if (lra_dump_file != NULL) fprintf (lra_dump_file, " Using elimination %d to %d now\n", ep1->from, ep1->to); - lra_assert (known_eq (ep1->previous_offset, 0)); + lra_assert (known_eq (ep1->previous_offset, -1)); ep1->previous_offset = ep->offset; } else