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

--- Comment #1 from John David Anglin <danglin at gcc dot gnu.org> ---
The problem is we have two overlapping ranges where the r1 register
is needed.  Although the insns to load a symbol_ref are originally
emitted as a high/losum pair, RTL optimization can rearrange the pair
so they are no longer adjacent.

Somehow old reload handled this, but LRA can't.

********** Assignment #13: **********

         Assigning to 863 (cl=R1_REGS, orig=863, freq=3, tfirst=863,
tfreq=3)...
  2nd iter for reload pseudo assignments:
         Reload r863 assignment failure
          Spill  r233(hr=4, freq=3)
          Spill  r238(hr=3, freq=3)
          Spill  r276(hr=6, freq=1975)
          Spill  r355(hr=14, freq=108)
          Spill  r499(hr=21, freq=2)
          Spill  r737(hr=9, freq=1133)
          Spill  r738(hr=5, freq=2117)
          Spill  r739(hr=11, freq=217)
          Spill  r742(hr=12, freq=217)
          Spill  r743(hr=7, freq=218)
          Spill  r745(hr=13, freq=217)
          Spill  r746(hr=18, freq=217)
          Spill  r748(hr=8, freq=1166)
          Spill  r749(hr=10, freq=251)
          Spill reload  r815(hr=1, freq=3)
          Spill inheritance  r853(hr=3, freq=3)
          Spill inheritance  r855(hr=4, freq=3)
          Spill inheritance  r857(hr=15, freq=3)
         Assigning to 815 (cl=R1_REGS, orig=815, freq=3, tfirst=815,
tfreq=3)...
           Assign 1 to reload r815 (freq=3)
         Assigning to 863 (cl=R1_REGS, orig=863, freq=3, tfirst=863,
tfreq=3)...
         Assigning to 853 (cl=GENERAL_REGS, orig=238, freq=3, tfirst=853,
tfreq=3)...
           Assign 3 to inheritance r853 (freq=3)
         Assigning to 855 (cl=GENERAL_REGS, orig=233, freq=3, tfirst=855,
tfreq=3)...
           Assign 4 to inheritance r855 (freq=3)
         Assigning to 857 (cl=GENERAL_REGS, orig=150, freq=3, tfirst=857,
tfreq=3)...
           Assign 5 to inheritance r857 (freq=3)
        Improving inheritance for 852(15) and 857(5)...
           Assign 15 to inheritance r857 (freq=3)
  Reassigning non-reload pseudos
           Assign 5 to r738 (freq=2117)
           Assign 6 to r276 (freq=1975)
           Assign 8 to r748 (freq=1166)
           Assign 9 to r737 (freq=1133)
           Assign 10 to r749 (freq=251)
           Assign 7 to r743 (freq=218)
           Assign 11 to r739 (freq=217)
           Assign 12 to r742 (freq=217)
           Assign 13 to r745 (freq=217)
           Assign 18 to r746 (freq=217)
           Assign 14 to r355 (freq=108)
           Assign 4 to r233 (freq=3)
           Assign 3 to r238 (freq=3)
           Assign 21 to r499 (freq=2)

****** Splitting a hard reg after assignment #13: ******

Reply via email to