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

--- Comment #58 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:a49a96f681bf13c6e77644d4507e867f00f93fe6

commit r11-7923-ga49a96f681bf13c6e77644d4507e867f00f93fe6
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Wed Mar 31 09:11:29 2021 +0200

    i386, debug: Default to -gdwarf-4 on Windows targets with broken ld.bfd
[PR98860]

    As mentioned in the PR, before the
   
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba6eb62ff0ea9843a018cfd7cd06777bd66ae0a0
    fix from March 1st, PECOFF ld.bfd didn't know about .debug_loclists,
    .debug_rnglists and other debug sections new in DWARF 5.  Unfortunately,
    unlike for ELF linkers, that means the sections were placed in wrong
    ordering with wrong VMA/LMA, so the resulting executables are apparently
    unusable.

    As that is pretty new change, newer than 2.35.2 or 2.36 binutils releases,
    the following patch adds a workaround that turns -gdwarf-4 by default
    instead of -gdwarf-5 if a broken linker is found at configure time.
    Users can still explicitly play with -gdwarf-5 and either use a non-broken
    linker or use custom linker scripts for the broken one, but at least
    by default it should work.

    2021-03-31  Jakub Jelinek  <ja...@redhat.com>

            PR bootstrap/98860
            * configure.ac (HAVE_LD_BROKEN_PE_DWARF5): New AC_DEFINE if PECOFF
            linker doesn't support DWARF sections new in DWARF5.
            * config/i386/i386-options.c (ix86_option_override_internal):
Default
            to dwarf_version 4 if HAVE_LD_BROKEN_PE_DWARF5 for TARGET_PECOFF
            targets.
            * config.in: Regenerated.
            * configure: Regenerated.

Reply via email to