[Bug c++/90981] [9/10 Regression] ICE in dwarf2out_finish, at dwarf2out.c:31644

mark at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Jun 25 08:44:00 GMT 2019


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

--- Comment #3 from Mark Wielaard <mark at gcc dot gnu.org> ---
(In reply to Martin Liška from comment #2)
> Btw. started with r259743.

Thanks. So that is mine:

commit ac7a2c61cf2ae7fcc948724ae179ac812c12186a
Author: mark <mark@138bc75d-0d04-0410-961f-82ee72b054a4>
Date:   Sat Apr 28 19:54:08 2018 +0000

    DWARF: Add .debug_addr table header for dwarf_version >= 5.

    GNU DebugFission didn't add table headers for the .debug_addr
    tables, but DWARF5 does. The table header makes it possible
    for a DWARF consumer to parse the address tables without having
    to index all .debug_info CUs first.

    We can keep using the .debug_addr section label as is, because the
    DW_AT_[GNU_]addr_base attribute points at the actual address index,
    which starts right after the table header. So the label is generated
    at the correct location whether the header is added first or not.

    Add DW_AT_addr_base instead of DW_AT_GNU_addr_base to the skeleton
    CU DIE for DWARF5.

    gcc/ChangeLog

        * dwarf2out.c (dwarf2out_finish): Add .debug_addr table header for
        dwarf_version >= 5.
        (dwarf_AT): Handle DW_AT_addr_base.
        (add_top_level_skeleton_die_attrs): Use dwarf_AT for DW_AT_addr_base.

    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@259743
138bc75d-0d04-0410-961f-82ee72b054a4


More information about the Gcc-bugs mailing list