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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |law at gcc dot gnu.org

--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
First change with that commit already appears in the reload pass:
 (insn 12 6 8 2 (set (reg:DI 5 di [84])
-        (plus:DI (reg/f:DI 7 sp)
+        (plus:DI (reg/f:DI 7 sp [orig:103 state+8 ] [103])
             (const_int 8 [0x8]))) "pr110308.C":11:22 249 {*leadi}
      (nil))
and many further changes of this kind appear later in cprop_hardreg.
The vartrack ICE is because regno_reg_rtx[103] is NULL and so PSEUDO_REGNO_MODE
(103) ICEs.
For debug info, propagation of the sp with the extra debug info related stuff
(ORIGINAL_REGNO and REG_ATTRS) is I think very harmful, but I admit I haven't
tried to understand why that change has been done.

Reply via email to