diff options
author | Terry Guo <terry.guo@arm.com> | 2015-02-26 14:11:41 +0800 |
---|---|---|
committer | Terry Guo <terry.guo@arm.com> | 2015-02-26 14:11:41 +0800 |
commit | 99654aaf360c38a7bff69be8c175a78b83a7d263 (patch) | |
tree | 45ebe020964fc5a8d84bbc4ce6f57b5d86b7d0da /bfd | |
parent | a127494f2dcad834743e613be4cfea39511ad5ec (diff) | |
download | gdb-99654aaf360c38a7bff69be8c175a78b83a7d263.zip gdb-99654aaf360c38a7bff69be8c175a78b83a7d263.tar.gz gdb-99654aaf360c38a7bff69be8c175a78b83a7d263.tar.bz2 |
[ARM]Update for Tag_ABI_HardFP_use per EABI doc
Updated how we merge and display this attribute per the latest
EABI documents.
bfd/ChangeLog
* elf32-arm.c (elf32_arm_merge_eabi_attributes): Update how we
merge Tag_ABI_HardFP_use.
binutils/ChangeLog
* readelf.c (arm_attr_tag_ABI_HardFP_use): Update how we
display it.
ld/testsuite/ChangeLog
* ld-arm/attr-merge-3.attr: Remove Tag_ABI_HardFP_use.
* ld-arm/attr-merge-vfp-10.d: Likewise.
* ld-arm/attr-merge-vfp-10r.d: Likewise.
* ld-arm/attr-merge-vfp-12.d: Likewise.
* ld-arm/attr-merge-vfp-12r.d: Likewise.
* ld-arm/attr-merge-vfp-13.d: Likewise.
* ld-arm/attr-merge-vfp-13r.d: Likewise.
* ld-arm/attr-merge-vfp-14.d: Likewise.
* ld-arm/attr-merge-vfp-14r.d: Likewise.
* ld-arm/attr-merge-vfp-6.d: Likewise.
* ld-arm/attr-merge-vfp-6r.d: Likewise.
* ld-arm/attr-merge-vfp-7.d: Likewise.
* ld-arm/attr-merge-vfp-7r.d: Likewise.
* ld-arm/attr-merge-vfp-8.d: Likewise.
* ld-arm/attr-merge-vfp-8r.d: Likewise.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elf32-arm.c | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index bddd764..01b2d68 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2015-02-26 Terry Guo <terry.guo@arm.com> + + * elf32-arm.c (elf32_arm_merge_eabi_attributes): Update how we + merge Tag_ABI_HardFP_use. + 2015-02-26 Alan Modra <amodra@gmail.com> * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Heed -z nocopyreloc. diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index 5801fe9..c9e314e 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -11972,7 +11972,7 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd) /* Tag_ABI_HardFP_use is handled along with Tag_FP_arch since the meaning of Tag_ABI_HardFP_use depends on Tag_FP_arch when it's 0. It might mean absence of FP hardware if - Tag_FP_arch is zero, otherwise it is effectively SP + DP. */ + Tag_FP_arch is zero. */ #define VFP_VERSION_COUNT 9 static const struct @@ -12014,7 +12014,7 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd) } /* Both the input and the output have nonzero Tag_FP_arch. - So Tag_ABI_HardFP_use is (SP & DP) when it's zero. */ + So Tag_ABI_HardFP_use is implied by Tag_FP_arch when it's zero. */ /* If both the input and the output have zero Tag_ABI_HardFP_use, do nothing. */ @@ -12022,10 +12022,10 @@ elf32_arm_merge_eabi_attributes (bfd *ibfd, bfd *obfd) && out_attr[Tag_ABI_HardFP_use].i == 0) ; /* If the input and the output have different Tag_ABI_HardFP_use, - the combination of them is 3 (SP & DP). */ + the combination of them is 0 (implied by Tag_FP_arch). */ else if (in_attr[Tag_ABI_HardFP_use].i != out_attr[Tag_ABI_HardFP_use].i) - out_attr[Tag_ABI_HardFP_use].i = 3; + out_attr[Tag_ABI_HardFP_use].i = 0; /* Now we can handle Tag_FP_arch. */ |