aboutsummaryrefslogtreecommitdiff
path: root/gold/layout.cc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2011-06-29 21:39:19 +0000
committerIan Lance Taylor <ian@airs.com>2011-06-29 21:39:19 +0000
commit4d5e4e62e11291ffec0c5039c9b396a07e9a2d39 (patch)
tree0f1e0141dc2955e11026b9af26d154b42a5a2ab8 /gold/layout.cc
parent886f533adaf49c51722d4b02a309e88dd8c1c239 (diff)
downloadgdb-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/layout.cc')
-rw-r--r--gold/layout.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/gold/layout.cc b/gold/layout.cc
index a52d35c..3152622 100644
--- a/gold/layout.cc
+++ b/gold/layout.cc
@@ -1132,7 +1132,8 @@ Layout::layout_eh_frame(Sized_relobj_file<size, big_endian>* object,
unsigned int reloc_shndx, unsigned int reloc_type,
off_t* off)
{
- gold_assert(shdr.get_sh_type() == elfcpp::SHT_PROGBITS);
+ gold_assert(shdr.get_sh_type() == elfcpp::SHT_PROGBITS
+ || shdr.get_sh_type() == elfcpp::SHT_X86_64_UNWIND);
gold_assert((shdr.get_sh_flags() & elfcpp::SHF_ALLOC) != 0);
const char* const name = ".eh_frame";