This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[gold commit] Allow multiple .eh_frame sections per object file


LLVM is experimenting with placing .eh_frame sections in the COMDAT group
with the function's text. This triggers an internal error in gold because
we don't expect to see but one .eh_frame section in an object, and we use
a single data member in class Sized_relobj_file to keep track of that section.

This patch removes that data member, and instead checks the output section
and the input section offset to identify an optimized .eh_frame section.

-cary

2017-11-28  Cary Coutant  <ccoutant@gmail.com>

gold/
        * object.h (class Sized_relobj_file): Remove discarded_eh_frame_shndx_.
        * object.cc (Sized_relobj_file::Sized_relobj_file): Likewise.
        (Sized_relobj_file::layout_eh_frame_section): Likewise.
        (Sized_relobj_file::do_count_local_symbols): Check for optimized
        .eh_frame section by other means.
        (Sized_relobj_file::compute_final_local_value_internal): Likewise.

Attachment: ehframe-multi.patch
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]