[IRA] Fix PR91052 by skipping multiple_sets insn in combine_and_move_insns
authorKewen Lin <linkw@linux.ibm.com>
Wed, 12 Feb 2020 05:22:02 +0000 (23:22 -0600)
committerKewen Lin <linkw@linux.ibm.com>
Wed, 12 Feb 2020 05:22:02 +0000 (23:22 -0600)
commit4d2248bec5d22061ab252724bd59d45c8a47e009
tree4018459a0ec50842a8e3744b0b36003202d62712
parent91f993b7e31ce85676148dca180bc0d827d4245e
[IRA] Fix PR91052 by skipping multiple_sets insn in combine_and_move_insns

As PR91052's comments show, commit r272731 exposed one issue in function
combine_and_move_insns.  Function combine_and_move_insns perform the
unexpected movement which alter live interval of some register, leading
incorrect value to be used.  See PR91052 for details.

2020-02-12  Kewen Lin  <linkw@gcc.gnu.org>
    PR target/91052
    * ira.c (combine_and_move_insns): Skip multiple_sets def_insn.
gcc/ChangeLog
gcc/ira.c