[Bug debug/90717] wrong stmt location for breakpoint, XFAIL gcc.dg/guality/pr90716.c -flto -fuse-linker-plugin

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Jun 3 08:06:00 GMT 2019


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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-debug
                 CC|                            |aoliva at gcc dot gnu.org
             Blocks|                            |90716

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
Alex?  Even in .final t.c:23 is only mentioned after all locations for b/j,
while we want to preserve them we only want the "last" value, not all views
on a instruction for line 23.  At least until gdb has better support for
location views?

(note 476 553 477 2 t.c:16 NOTE_INSN_BEGIN_STMT)
(note 477 476 478 2 t.c:17 NOTE_INSN_BEGIN_STMT)
(note 478 477 554 2 t.c:16 NOTE_INSN_BEGIN_STMT)
(note 554 478 479 2 (var_location j (const_int 8 [0x8]))
NOTE_INSN_VAR_LOCATION)
(note 479 554 480 2 t.c:16 NOTE_INSN_BEGIN_STMT)
(note 480 479 555 2 t.c:14 NOTE_INSN_BEGIN_STMT)
(note 555 480 481 2 (var_location b (const_int 7 [0x7]))
NOTE_INSN_VAR_LOCATION)
(note 481 555 482 2 t.c:14 NOTE_INSN_BEGIN_STMT)
(note 482 481 286 2 t.c:23 NOTE_INSN_BEGIN_STMT)
(insn:TI 286 482 272 2 (parallel [
            (set (reg:DI 0 ax)
                (const_int 0 [0]))
            (clobber (reg:CC 17 flags))
        ]) "t.c":23:3 60 {*movdi_xor}
     (expr_list:REG_UNUSED (reg:CC 17 flags)
        (nil)))
(call_insn:TI 272 286 483 2 (call (mem:QI (symbol_ref:DI ("optimize_me_not")
[flags 0x3]  <function_decl 0x7fd9b4e55f00 optimize_me_not>) [0 optimize_me_not
S1 A8])
        (const_int 0 [0])) "t.c":23:3 666 {*call}
     (expr_list:REG_CALL_ARG_LOCATION (nil)
        (expr_list:REG_DEAD (reg:QI 0 ax)
            (expr_list:REG_CALL_DECL (symbol_ref:DI ("optimize_me_not") [flags
0x3]  <function_decl 0x7fd9b4e55f00 optimize_me_not>)
                (expr_list:REG_EH_REGION (const_int 0 [0])
                    (nil)))))
    (expr_list (use (reg:QI 0 ax))
        (nil)))
(note 483 272 287 2 t.c:24 NOTE_INSN_BEGIN_STMT)
(insn 287 483 279 2 (parallel [
            (set (reg:DI 0 ax)
                (const_int 0 [0]))
            (clobber (reg:CC 17 flags))
        ]) "t.c":25:1 60 {*movdi_xor}
     (expr_list:REG_UNUSED (reg:CC 17 flags)
        (nil)))
(insn 279 287 288 2 (use (reg/i:SI 0 ax)) "t.c":25:1 -1
     (nil))


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90716
[Bug 90716] [10 Regression] gcc generates wrong debug information at -O2


More information about the Gcc-bugs mailing list