summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2019-07-24 15:03:49 +0930
committerAlan Modra <amodra@gmail.com>2019-07-24 16:12:01 +0930
commit7137a1ed0ad9afdd57e6ef44abbfaeaeb44dd17e (patch)
treeb7ff41603cbdcbb4ffe3055527f2dbd828fcd4f9
parent024a5840006aba9ba698aa9d868a7394016dd4a0 (diff)
downloadbinutils-7137a1ed0ad9afdd57e6ef44abbfaeaeb44dd17e.tar.gz
binutils-7137a1ed0ad9afdd57e6ef44abbfaeaeb44dd17e.tar.xz
binutils-7137a1ed0ad9afdd57e6ef44abbfaeaeb44dd17e.zip
PT_GNU_MBIND section mapping
* elf/internal.h (ELF_SECTION_IN_SEGMENT_1): Exclude non-alloc sections in GNU_MBIND segments.
-rw-r--r--include/ChangeLog5
-rw-r--r--include/elf/internal.h4
2 files changed, 8 insertions, 1 deletions
diff --git a/include/ChangeLog b/include/ChangeLog
index 4c841e3595..ce38864ba0 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,8 @@
+2019-07-24 Alan Modra <amodra@gmail.com>
+
+ * elf/internal.h (ELF_SECTION_IN_SEGMENT_1): Exclude non-alloc
+ sections in GNU_MBIND segments.
+
2019-07-23 Omar Majid <omajid@redhat.com>
* coff/i386.h (IMAGE_FILE_MACHINE_NATIVE_APPLE_OVERRIDE): Define.
diff --git a/include/elf/internal.h b/include/elf/internal.h
index e29fc40df6..59e3ede2e0 100644
--- a/include/elf/internal.h
+++ b/include/elf/internal.h
@@ -330,8 +330,10 @@ struct elf_segment_map
&& ((segment)->p_type == PT_LOAD \
|| (segment)->p_type == PT_DYNAMIC \
|| (segment)->p_type == PT_GNU_EH_FRAME \
+ || (segment)->p_type == PT_GNU_STACK \
|| (segment)->p_type == PT_GNU_RELRO \
- || (segment)->p_type == PT_GNU_STACK)) \
+ || ((segment)->p_type >= PT_GNU_MBIND_LO \
+ && (segment)->p_type <= PT_GNU_MBIND_HI))) \
/* Any section besides one of type SHT_NOBITS must have file \
offsets within the segment. */ \
&& ((sec_hdr)->sh_type == SHT_NOBITS \