https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108774
--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Vladimir Makarov <vmaka...@gcc.gnu.org>: https://gcc.gnu.org/g:a33e3dcbd15e73603796e30b5eeec11a0c8bacec commit r13-5971-ga33e3dcbd15e73603796e30b5eeec11a0c8bacec Author: Vladimir N. Makarov <vmaka...@redhat.com> Date: Mon Feb 13 16:05:04 2023 -0500 RA: Clear reg equiv caller_save_p flag when clearing defined_p flag IRA can invalidate initially setup equivalence in setup_reg_equiv. Flag caller_saved was not cleared during invalidation although init_insns were cleared. It resulted in segmentation fault in get_equiv. Clearing the flag solves the problem. For more precaution I added clearing the flag in other places too although it might be not necessary. PR rtl-optimization/108774 gcc/ChangeLog: * ira.cc (ira_update_equiv_info_by_shuffle_insn): Clear equiv caller_save_p flag when clearing defined_p flag. (setup_reg_equiv): Ditto. * lra-constraints.cc (lra_constraints): Ditto. gcc/testsuite/ChangeLog: * gcc.target/i386/pr108774.c: New.