diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2018-12-04 06:00:57 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2018-12-04 06:01:14 -0800 |
commit | fde51dd189a1f8a63896bcb845ef36ea5e1917d5 (patch) | |
tree | 04aefd91f07745df41d7d60ebeebde6ce2008fac /ld/testsuite | |
parent | f4238194a211a6a27598a7fdf9ad63f9b5d6fbaa (diff) | |
download | gdb-fde51dd189a1f8a63896bcb845ef36ea5e1917d5.zip gdb-fde51dd189a1f8a63896bcb845ef36ea5e1917d5.tar.gz gdb-fde51dd189a1f8a63896bcb845ef36ea5e1917d5.tar.bz2 |
x86: Don't remove empty GNU_PROPERTY_X86_UINT32_OR_AND properties
For GNU_PROPERTY_X86_COMPAT_ISA_1_USED and GNU_PROPERTY_X86_UINT32_OR_AND
properties, a bit in the output pr_data field is set if it is set in any
relocatable input pr_data fields and this property is present in all
relocatable input files. A missing property implies that its bits have
unknown values. When all bits in the the output pr_data field are zero,
this property should not be removed from output to indicate it has zero
in all bits.
bfd/
PR ld/23372
* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Don't remove
empty properties for GNU_PROPERTY_X86_COMPAT_ISA_1_USED and
GNU_PROPERTY_X86_UINT32_OR_AND.
(_bfd_x86_elf_link_fixup_gnu_properties): Likewise.
ld/
PR ld/23372
* testsuite/ld-i386/pr23372a.d: Updated.
* testsuite/ld-i386/pr23372c.d: Likewise.
* testsuite/ld-x86-64/pr23372a-x32.d: Likewise.
* testsuite/ld-x86-64/pr23372a.d: Likewise.
* testsuite/ld-x86-64/pr23372c-x32.d: Likewise.
* testsuite/ld-x86-64/pr23372c.d: Likewise.
Diffstat (limited to 'ld/testsuite')
-rw-r--r-- | ld/testsuite/ld-i386/pr23372a.d | 5 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/pr23372c.d | 5 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/pr23372a-x32.d | 5 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/pr23372a.d | 5 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/pr23372c-x32.d | 5 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/pr23372c.d | 5 |
6 files changed, 30 insertions, 0 deletions
diff --git a/ld/testsuite/ld-i386/pr23372a.d b/ld/testsuite/ld-i386/pr23372a.d index b75523b..7af7efb 100644 --- a/ld/testsuite/ld-i386/pr23372a.d +++ b/ld/testsuite/ld-i386/pr23372a.d @@ -3,3 +3,8 @@ #as: --32 #ld: -r -m elf_i386 #readelf: -n + +Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: x86 ISA used: diff --git a/ld/testsuite/ld-i386/pr23372c.d b/ld/testsuite/ld-i386/pr23372c.d index 987ae4c..d5bcc4d 100644 --- a/ld/testsuite/ld-i386/pr23372c.d +++ b/ld/testsuite/ld-i386/pr23372c.d @@ -3,3 +3,8 @@ #as: --32 #ld: -r -m elf_i386 #readelf: -n + +Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: x86 ISA used: diff --git a/ld/testsuite/ld-x86-64/pr23372a-x32.d b/ld/testsuite/ld-x86-64/pr23372a-x32.d index 9f93642..84e4602 100644 --- a/ld/testsuite/ld-x86-64/pr23372a-x32.d +++ b/ld/testsuite/ld-x86-64/pr23372a-x32.d @@ -3,3 +3,8 @@ #as: --x32 #ld: -r -m elf32_x86_64 #readelf: -n + +Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: x86 ISA used: diff --git a/ld/testsuite/ld-x86-64/pr23372a.d b/ld/testsuite/ld-x86-64/pr23372a.d index ee688fc..d988a6a 100644 --- a/ld/testsuite/ld-x86-64/pr23372a.d +++ b/ld/testsuite/ld-x86-64/pr23372a.d @@ -3,3 +3,8 @@ #as: --64 -defsym __64_bit__=1 #ld: -r -m elf_x86_64 #readelf: -n + +Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: x86 ISA used: diff --git a/ld/testsuite/ld-x86-64/pr23372c-x32.d b/ld/testsuite/ld-x86-64/pr23372c-x32.d index 863f4b7..efd6e84 100644 --- a/ld/testsuite/ld-x86-64/pr23372c-x32.d +++ b/ld/testsuite/ld-x86-64/pr23372c-x32.d @@ -3,3 +3,8 @@ #as: --x32 #ld: -r -m elf32_x86_64 #readelf: -n + +Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: x86 ISA used: diff --git a/ld/testsuite/ld-x86-64/pr23372c.d b/ld/testsuite/ld-x86-64/pr23372c.d index 23bdaa7..f56859a 100644 --- a/ld/testsuite/ld-x86-64/pr23372c.d +++ b/ld/testsuite/ld-x86-64/pr23372c.d @@ -3,3 +3,8 @@ #as: --64 -defsym __64_bit__=1 #ld: -r -m elf_x86_64 #readelf: -n + +Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: x86 ISA used: |