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.