[Bug rtl-optimization/87902] [9 Regression] Shrink-wrapping multiple conditions

iii at linux dot ibm.com gcc-bugzilla@gcc.gnu.org
Thu Nov 8 15:53:00 GMT 2018


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87902

--- Comment #3 from Ilya Leoshkevich <iii at linux dot ibm.com> ---
Judging by the following comment in lra-coalesce.c, RA doesn't do this
intentionally:

   Here we coalesce only spilled pseudos.  Coalescing non-spilled
   pseudos (with different hard regs) might result in spilling
   additional pseudos because of possible conflicts with other
   non-spilled pseudos and, as a consequence, in more constraint
   passes and even LRA infinite cycling.  Trivial the same hard
   register moves will be removed by subsequent compiler passes.

In which cases would moving copies down in prepare_shrink_wrap () make
the code worse?


More information about the Gcc-bugs mailing list