http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59311
H.J. Lu <hjl.tools at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |vmakarov at redhat dot com Component|c++ |rtl-optimization --- Comment #4 from H.J. Lu <hjl.tools at gmail dot com> --- It looks like a LRA bug on x86. x.ii.212r.ira has insn/f 202 3 2 2 (set (reg:SI 177) (reg:SI 2 cx)) 86 {*movsi_internal} (expr_list:REG_DEAD (reg:SI 2 cx) (expr_list:REG_CFA_SET_VDRAP (reg:SI 177) (nil)))) x.ii.213r.reload has (insn/f 202 3 2 2 (set (mem/c:SI (plus:SI (reg/f:SI 6 bp) (const_int -48 [0xffffffffffffffd0])) [0 %sfp+-48 S4 A32]) (reg:SI 2 cx)) 86 {*movsi_internal} (expr_list:REG_CFA_SET_VDRAP (reg:SI 177) (nil))) Should the REG_CFA_SET_VDRAP note be dropped or should dwarf2out_frame_debug handle (gdb) call debug_rtx (insn) (insn/f 202 254 2 2 (set (mem/c:SI (plus:SI (reg/f:SI 6 bp) (const_int -48 [0xffffffffffffffd0])) [0 %sfp+-48 S4 A32]) (reg:SI 2 cx)) 86 {*movsi_internal} (expr_list:REG_CFA_SET_VDRAP (reg:SI 177) (nil))) (gdb) in case REG_CFA_SET_VDRAP: n = XEXP (note, 0); if (REG_P (n)) { dw_fde_ref fde = cfun->fde; if (fde) { gcc_assert (fde->vdrap_reg == INVALID_REGNUM); if (REG_P (n)) fde->vdrap_reg = dwf_regno (n); } } handled_one = true; break;