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

--- Comment #8 from Jack Howarth <howarth at nitro dot med.uc.edu> ---
The darwin linker developer's analysis of the failing linkage of cc1 is
below...

The assertion is about the file libbackend.a(varasm.o).  There are overlapping
FDEs.  If you run dwarfdump in verify mode, it will complain about it to::

[/tmp/newlinkerbug/lib]> dwarfdump --eh-frame --verify varasm.o
----------------------------------------------------------------------
 File: varasm.o (x86_64)
----------------------------------------------------------------------
Verifying EH Frame... error: FDE row for address 0x0000000000005900 is not in
the FDE address range.

0x000020e0: FDE
                length: 0x0000001c
   CIE_pointer: 0x00000000
    start_addr: 0x0000000000005900 __Z24default_no_named_sectionPKcjP9tree_node
    range_size: 0x0000000000000000 (end_addr = 0x0000000000005900)
                DW_CFA_nop
                DW_CFA_nop
                DW_CFA_nop
                DW_CFA_nop
                DW_CFA_nop
                DW_CFA_nop
                DW_CFA_nop
  Instructions: 0x0000000000005900: CFA=rsp+8     rip=[rsp]

1 errors found in EH frame for varasm.o (x86_64).

Dumping the whole  file, there is an FD for a zero length function, so two FDEs
have the same function start address:

0x000020e0: FDE
        length: 0x0000001c
   CIE_pointer: 0x00000000

    start_addr: 0x0000000000005900 __Z24default_no_named_sectionPKcjP9tree_node
    range_size: 0x0000000000000000 (end_addr = 0x0000000000005900)
                DW_CFA_nop
                DW_CFA_nop
                DW_CFA_nop
                DW_CFA_nop
                DW_CFA_nop
                DW_CFA_nop
                DW_CFA_nop
  Instructions: 0x0000000000005900: CFA=rsp+8     rip=[rsp]


0x00002100: FDE
               alength: 0x0000006c
   CIE_pointer: 0x00000000
    start_addr: 0x0000000000005900 __Z24default_no_named_sectionPKcjP9tree_node
    range_size: 0x0000000000000154 (end_addr = 0x0000000000005a54)
  Instructions: 0x0000000000005900: CFA=rsp+8     rip=[rsp]

Reply via email to