diff options
author | Ian Lance Taylor <ian@airs.com> | 2011-06-29 21:39:19 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2011-06-29 21:39:19 +0000 |
commit | 4d5e4e62e11291ffec0c5039c9b396a07e9a2d39 (patch) | |
tree | 0f1e0141dc2955e11026b9af26d154b42a5a2ab8 /gold/object.cc | |
parent | 886f533adaf49c51722d4b02a309e88dd8c1c239 (diff) | |
download | gdb-4d5e4e62e11291ffec0c5039c9b396a07e9a2d39.zip gdb-4d5e4e62e11291ffec0c5039c9b396a07e9a2d39.tar.gz gdb-4d5e4e62e11291ffec0c5039c9b396a07e9a2d39.tar.bz2 |
PR gold/12675
* object.cc (Sized_relobj_file::check_eh_frame_flags): Check for
SHT_X86_64_UNWIND.
* layout.cc (Layout::layout_eh_frame): Likewise.
Diffstat (limited to 'gold/object.cc')
-rw-r--r-- | gold/object.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gold/object.cc b/gold/object.cc index 778f03b..322f56e 100644 --- a/gold/object.cc +++ b/gold/object.cc @@ -511,7 +511,9 @@ bool Sized_relobj_file<size, big_endian>::check_eh_frame_flags( const elfcpp::Shdr<size, big_endian>* shdr) const { - return (shdr->get_sh_type() == elfcpp::SHT_PROGBITS + elfcpp::Elf_Word sh_type = shdr->get_sh_type(); + return ((sh_type == elfcpp::SHT_PROGBITS + || sh_type == elfcpp::SHT_X86_64_UNWIND) && (shdr->get_sh_flags() & elfcpp::SHF_ALLOC) != 0); } |