From 537616aaeb44bc698af9848987e7c8e96d550595 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Tue, 11 Apr 2017 15:07:41 -0700 Subject: [PATCH] Ignore processor-specific GNU program properties Skip processor-specific GNU program properties with generic ELF target vector. They should be handled by the matching ELF target vector. * elf-properties.c (_bfd_elf_parse_gnu_properties): Ignore processor-specific properties with generic ELF target vector. --- bfd/ChangeLog | 5 +++++ bfd/elf-properties.c | 10 +++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index d0465623ff0..678a00787ed 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2017-04-11 H.J. Lu + + * elf-properties.c (_bfd_elf_parse_gnu_properties): Ignore + processor-specific properties with generic ELF target vector. + 2017-04-10 Qing Zhao * elf32-sparc.c (elf_backend_fixup_symbol): New. diff --git a/bfd/elf-properties.c b/bfd/elf-properties.c index a0456f8df9f..04ef53625a3 100644 --- a/bfd/elf-properties.c +++ b/bfd/elf-properties.c @@ -113,7 +113,15 @@ bad_size: if (type >= GNU_PROPERTY_LOPROC) { - if (type < GNU_PROPERTY_LOUSER && bed->parse_gnu_properties) + if (bed->elf_machine_code == EM_NONE) + { + /* Ignore processor-specific properties with generic ELF + target vector. They should be handled by the matching + ELF target vector. */ + goto next; + } + else if (type < GNU_PROPERTY_LOUSER + && bed->parse_gnu_properties) { enum elf_property_kind kind = bed->parse_gnu_properties (abfd, type, ptr, datasz); -- 2.30.2