diff options
author | Matthew Gretton-Dann <matthew.gretton-dann@arm.com> | 2010-02-18 10:56:28 +0000 |
---|---|---|
committer | Matthew Gretton-Dann <matthew.gretton-dann@arm.com> | 2010-02-18 10:56:28 +0000 |
commit | cd21e5460f664d311f34645388138a44c228dc97 (patch) | |
tree | 7e54cb6be39aecfd063c1883fe5b8a7f81b9df5a /binutils/readelf.c | |
parent | b2fc24d469b6025b1a7729acb6032e74a875a734 (diff) | |
download | gdb-cd21e5460f664d311f34645388138a44c228dc97.zip gdb-cd21e5460f664d311f34645388138a44c228dc97.tar.gz gdb-cd21e5460f664d311f34645388138a44c228dc97.tar.bz2 |
* bfd/elf32-arm.c (elf32_arm_merge_eabi_attributes): Add support for
merging Tag_DIV_use, Tag_MPextension_use, and
Tag_MPextension_use_legacy tags.
* binutils/readelf.c (arm_attr_tag_Advanced_SIMD_arch): Add
description of newly permitted attribute values.
(arm_attr_tag_Virtualization_use): Likewise.
(arm_attr_tag_DIV_use): Add description of new attribute.
(arm_attr_tag_MPextension_use_legacy): Likewise.
* gas/config/tc-arm.c (arm_convert_symbolic_attribute):
Add Tag_DIV_use.
* gas/doc/c-arm.texi: Likewise.
* gas/testsuite/gas/arm/attr-order.d: Fix test for new names for
attribute values.
* include/elf/arm.h (Tag_MPextension_use): Renumber.
(Tag_DIV_use): Add.
(Tag_MPextension_use_legacy): Likewise.
* ld/testsuite/ld-arm/attr-merge-3.attr: Fix test for new attribute
values.
* ld/testsuite/ld-arm/attr-merge-3b.s: Likewise.
* ld/testsuite/ld-arm/attr-merge-unknown-1.d: Fix test now that 42
is a recognised attribute ID.
* ld/testsuite/ld-arm/attr-merge-unknown-1.s: Likewise.
* ld/testsuite/ld-arm/attr-merge-6.attr: New test.
* ld/testsuite/ld-arm/attr-merge-6a.s: Likewise.
* ld/testsuite/ld-arm/attr-merge-6b.s: Likewise.
* ld/testsuite/ld-arm/attr-merge-7.attr: Likewise.
* ld/testsuite/ld-arm/attr-merge-7a.s: Likewise.
* ld/testsuite/ld-arm/attr-merge-7b.s: Likewise.
* ld/testsuite/ld-arm/arm-elf.exp: Run the new tests.
Diffstat (limited to 'binutils/readelf.c')
-rw-r--r-- | binutils/readelf.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/binutils/readelf.c b/binutils/readelf.c index 6994289..b5d766f 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -9071,7 +9071,8 @@ static const char * arm_attr_tag_THUMB_ISA_use[] = static const char * arm_attr_tag_VFP_arch[] = {"No", "VFPv1", "VFPv2", "VFPv3", "VFPv3-D16", "VFPv4", "VFPv4-D16"}; static const char * arm_attr_tag_WMMX_arch[] = {"No", "WMMXv1", "WMMXv2"}; -static const char * arm_attr_tag_Advanced_SIMD_arch[] = {"No", "NEONv1"}; +static const char * arm_attr_tag_Advanced_SIMD_arch[] = + {"No", "NEONv1", "NEONv1 with Fused-MAC"}; static const char * arm_attr_tag_PCS_config[] = {"None", "Bare platform", "Linux application", "Linux DSO", "PalmOS 2004", "PalmOS (reserved)", "SymbianOS 2004", "SymbianOS (reserved)"}; @@ -9114,10 +9115,17 @@ static const char * arm_attr_tag_VFP_HP_extension[] = {"Not Allowed", "Allowed"}; static const char * arm_attr_tag_ABI_FP_16bit_format[] = {"None", "IEEE 754", "Alternative Format"}; +static const char * arm_attr_tag_MPextension_use[] = + {"Not Allowed", "Allowed"}; +static const char * arm_attr_tag_DIV_use[] = + {"Allowed in Thumb-ISA, v7-R or v7-M", "Not allowed", + "Allowed in v7-A with integer division extension"}; static const char * arm_attr_tag_T2EE_use[] = {"Not Allowed", "Allowed"}; static const char * arm_attr_tag_Virtualization_use[] = + {"Not Allowed", "TrustZone", "Virtualization Extensions", + "TrustZone and Virtualization Extensions"}; +static const char * arm_attr_tag_MPextension_use_legacy[] = {"Not Allowed", "Allowed"}; -static const char * arm_attr_tag_MPextension_use[] = {"Not Allowed", "Allowed"}; #define LOOKUP(id, name) \ {id, #name, 0x80 | ARRAY_SIZE(arm_attr_tag_##name), arm_attr_tag_##name} @@ -9155,12 +9163,14 @@ static arm_attr_public_tag arm_attr_public_tags[] = LOOKUP(34, CPU_unaligned_access), LOOKUP(36, VFP_HP_extension), LOOKUP(38, ABI_FP_16bit_format), + LOOKUP(42, MPextension_use), + LOOKUP(44, DIV_use), {64, "nodefaults", 0, NULL}, {65, "also_compatible_with", 0, NULL}, LOOKUP(66, T2EE_use), {67, "conformance", 1, NULL}, LOOKUP(68, Virtualization_use), - LOOKUP(70, MPextension_use) + LOOKUP(70, MPextension_use_legacy) }; #undef LOOKUP |