On Thu, Sep 08, 2016 at 11:54:33AM -0600, Jeff Law wrote: > On 07/31/2016 07:42 PM, Segher Boessenkool wrote: > >If selective scheduling copies register restores it confuses dwarf2cfi. > > > >2016-06-07 Segher Boessenkool <seg...@kernel.crashing.org> > > > > * sel-sched-ir.c (init_global_and_expr_for_insn): Don't copy > > instructions with a REG_CFA_RESTORE note. > Similarly, I think you're papering over a lifetime problem of some kind > here.
sel-sched-ir.c says /* Certain instructions cannot be cloned, and frame related insns and the insn adjacent to NOTE_INSN_EPILOGUE_BEG cannot be moved out of their block. */ if (prologue_epilogue_contains (insn)) ... and I'm just extending that to "epilogue" instructions not in the "epilogue" ;-) If all such epilogue instructions always had a REG_CFA_RESTORE note, we could drop the "old" thing; but even instructions restoring a register do not always have such a note (they can be batched up, and they can be not emitted at all if not shrink-wrapping). Segher