[PR97684] IRA: Recalculate pseudo classes if we added new pseduos since last calculat...
authorVladimir N. Makarov <vmakarov@redhat.com>
Wed, 27 Jan 2021 19:53:28 +0000 (14:53 -0500)
committerVladimir N. Makarov <vmakarov@redhat.com>
Wed, 27 Jan 2021 20:59:05 +0000 (15:59 -0500)
commit081c96621da658760b4a67c07530805f770fa22c
tree7a1709c59076a2d211df3dfc944fba7018caa5b4
parent9cd7c32549fa334885b716fe98b674f6447fa7c0
[PR97684] IRA: Recalculate pseudo classes if we added new pseduos since last calculation before updating equiv regs

update_equiv_regs can use reg classes of pseudos and they are set up in
register pressure sensitive scheduling and loop invariant motion and in
live range shrinking.  This info can become obsolete if we add new pseudos
since the last set up.  Recalculate it again if the new pseudos were
added.

gcc/ChangeLog:

PR rtl-optimization/97684
* ira.c (ira): Call ira_set_pseudo_classes before
update_equiv_regs when it is necessary.

gcc/testsuite/ChangeLog:

PR rtl-optimization/97684
* gcc.target/i386/pr97684.c: New.
gcc/ira.c
gcc/testsuite/gcc.target/i386/pr97684.c [new file with mode: 0644]