[Bug debug/40126] [4.5 Regression] -O2 -g results in: can't resolve `.LFE95' {*UND* section} - `.Ltext0' {.text section}

hubicka at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Thu May 14 15:29:00 GMT 2009



------- Comment #4 from hubicka at gcc dot gnu dot org  2009-05-14 15:29 -------
This looks like latent bug in dwarf2out.  There is location list:
.LLST2: 
        .long   .LVL0-.Ltext0   # Location list begin address (*.LLST2)
        .long   .LVL1-.Ltext0   # Location list end address (*.LLST2)
        .value  0x2     # Location expression size
        .byte   0x91    # DW_OP_fbreg
        .sleb128 0
        .long   .LVL1-.Ltext0   # Location list begin address (*.LLST2)
        .long   .LFE6-.Ltext0   # Location list end address (*.LLST2)
        .value  0x2     # Location expression size
        .byte   0x75    # DW_OP_breg5
        .sleb128 8
        .long   0x0     # Location list terminator begin (*.LLST2)
        .long   0x0     # Location list terminator end (*.LLST2)

and LFE6 is not defined.  It is used from from foo as:

        .uleb128 0xb    # (DIE (0x297) DW_TAG_lexical_block)
        .uleb128 0x10   # (DIE (0x298) DW_TAG_formal_parameter)
        .long   0x20d   # DW_AT_abstract_origin
        .long   .LLST2  # DW_AT_location

       .uleb128 0x10   # (DIE (0x20d) DW_TAG_formal_parameter)
        .long   0xd5    # DW_AT_abstract_origin
        .long   .LLST1  # DW_AT_location

        .uleb128 0x8    # (DIE (0xd5) DW_TAG_formal_parameter)
        .ascii "t\0"    # DW_AT_name
        .byte   0x1     # DW_AT_decl_file (b.c)
        .byte   0x22    # DW_AT_decl_line
        .long   0x78    # DW_AT_type


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40126



More information about the Gcc-bugs mailing list