[ARM] Support correctly spelled ARMv6KZ architecture names
authorMatthew Wahab <matthew.wahab@arm.com>
Tue, 21 Jul 2015 08:43:35 +0000 (09:43 +0100)
committerJiong Wang <jiong.wang@arm.com>
Tue, 21 Jul 2015 08:43:35 +0000 (09:43 +0100)
2015-07-20  Matthew Wahab  <matthew.wahab@arm.com>

gas/
    * NEWS: Mention corrected spelling of armv6kz.
    * config/tc-arm.c (arm_cpus): Replace ARM_ARCH_V6ZK with
    ARM_ARCH_V6KZ.
    (arm_archs): Likewise. Also add "armv6kz" and "armv6kzt2".
    * doc/c-arm.texi: Replace "armv6zk" with "armv6kz".

gas/testsuite

    * gas/arm/attr-march-armv6kz.d: New.
    * gas/arm/attr-march-armv6kzt2.d: New.

include/opcode

    * arm.h (ARM_AEXT_V6ZK): Rename to ARM_AEXT_V6KZ.
    (ARM_AEXT_V6ZKT2): Rename to ARM_AEXT_V6KZT2.
    (ARM_ARCH_V6ZK): Rename to ARM_ARCH_V6KZ.
    (ARM_ARCH_V6ZKT2): Rename to ARM_ARCH_V6KZT2.

gas/ChangeLog
gas/NEWS
gas/config/tc-arm.c
gas/doc/c-arm.texi
gas/testsuite/ChangeLog
gas/testsuite/gas/arm/attr-march-armv6kz.d [new file with mode: 0644]
gas/testsuite/gas/arm/attr-march-armv6kzt2.d [new file with mode: 0644]
include/opcode/ChangeLog
include/opcode/arm.h

index d024f40132ce668a478040133d3edc764ac5f75f..5ea971497840f7a4b93459620a4c6d68feae8b6d 100644 (file)
@@ -1,3 +1,11 @@
+2015-07-20  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * NEWS: Mention corrected spelling of armv6kz.
+       * config/tc-arm.c (arm_cpus): Replace ARM_ARCH_V6ZK with
+       ARM_ARCH_V6KZ.
+       (arm_archs): Likewise. Also add "armv6kz" and "armv6kzt2".
+       * doc/c-arm.texi: Replace "armv6zk" with "armv6kz".
+
 2015-07-16  Jiong Wang  <jiong.wang@arm.com>
 
        * config/tc-aarch64.c (reloc_table): New relocation modifiers.
index 986325d0b7509c3fe03340749499a2effc6e753e..02a8d00943b87088f0b82b739a3cbd3a51436ed4 100644 (file)
--- a/gas/NEWS
+++ b/gas/NEWS
@@ -2,6 +2,9 @@
 
 Changes in 2.26:
 
+* Added the correctly spelled -march=armv6kz, for ARMv6KZ support.  The
+  previous spelling, -march=armv6zk, is still accepted.
+
 * Support for the ARMv8.1 architecture has been added to the Aarch64 port.
   Support for the individual ARMv8.1 Adv.SIMD, LOR and PAN architecture
   extensions has also been added to the Aarch64 port.
index a76b4ca62ecaa774ec7393d8377b21166f0d81af..7b3b5c9cfe30df299eef516a7ecaaf7c91d561fd 100644 (file)
@@ -24748,8 +24748,8 @@ static const struct arm_cpu_option_table arm_cpus[] =
   ARM_CPU_OPT ("mpcorenovfp",  ARM_ARCH_V6K,    FPU_NONE,        "MPCore"),
   ARM_CPU_OPT ("arm1156t2-s",  ARM_ARCH_V6T2,   FPU_NONE,        NULL),
   ARM_CPU_OPT ("arm1156t2f-s", ARM_ARCH_V6T2,   FPU_ARCH_VFP_V2, NULL),
-  ARM_CPU_OPT ("arm1176jz-s",  ARM_ARCH_V6ZK,   FPU_NONE,        NULL),
-  ARM_CPU_OPT ("arm1176jzf-s", ARM_ARCH_V6ZK,   FPU_ARCH_VFP_V2, NULL),
+  ARM_CPU_OPT ("arm1176jz-s",  ARM_ARCH_V6KZ,   FPU_NONE,        NULL),
+  ARM_CPU_OPT ("arm1176jzf-s", ARM_ARCH_V6KZ,   FPU_ARCH_VFP_V2, NULL),
   ARM_CPU_OPT ("cortex-a5",    ARM_ARCH_V7A_MP_SEC,
                                                 FPU_NONE,        "Cortex-A5"),
   ARM_CPU_OPT ("cortex-a7",    ARM_ARCH_V7VE,   FPU_ARCH_NEON_VFP_V4,
@@ -24851,11 +24851,17 @@ static const struct arm_arch_option_table arm_archs[] =
   ARM_ARCH_OPT ("armv6j",      ARM_ARCH_V6,     FPU_ARCH_VFP),
   ARM_ARCH_OPT ("armv6k",      ARM_ARCH_V6K,    FPU_ARCH_VFP),
   ARM_ARCH_OPT ("armv6z",      ARM_ARCH_V6Z,    FPU_ARCH_VFP),
-  ARM_ARCH_OPT ("armv6zk",     ARM_ARCH_V6ZK,   FPU_ARCH_VFP),
+  /* The official spelling of this variant is ARMv6KZ, the name "armv6zk" is
+     kept to preserve existing behaviour.  */
+  ARM_ARCH_OPT ("armv6kz",     ARM_ARCH_V6KZ,   FPU_ARCH_VFP),
+  ARM_ARCH_OPT ("armv6zk",     ARM_ARCH_V6KZ,   FPU_ARCH_VFP),
   ARM_ARCH_OPT ("armv6t2",     ARM_ARCH_V6T2,   FPU_ARCH_VFP),
   ARM_ARCH_OPT ("armv6kt2",    ARM_ARCH_V6KT2,  FPU_ARCH_VFP),
   ARM_ARCH_OPT ("armv6zt2",    ARM_ARCH_V6ZT2,  FPU_ARCH_VFP),
-  ARM_ARCH_OPT ("armv6zkt2",   ARM_ARCH_V6ZKT2, FPU_ARCH_VFP),
+  /* The official spelling of this variant is ARMv6KZ, the name "armv6zkt2" is
+     kept to preserve existing behaviour.  */
+  ARM_ARCH_OPT ("armv6kzt2",   ARM_ARCH_V6KZT2, FPU_ARCH_VFP),
+  ARM_ARCH_OPT ("armv6zkt2",   ARM_ARCH_V6KZT2, FPU_ARCH_VFP),
   ARM_ARCH_OPT ("armv6-m",     ARM_ARCH_V6M,    FPU_ARCH_VFP),
   ARM_ARCH_OPT ("armv6s-m",    ARM_ARCH_V6SM,   FPU_ARCH_VFP),
   ARM_ARCH_OPT ("armv7",       ARM_ARCH_V7,     FPU_ARCH_VFP),
index 7fadd289d89cd114e43a626359da466092802d35..e41943bfe7e90c7a064cf9990a70073495acf86a 100644 (file)
@@ -210,7 +210,7 @@ names are recognized:
 @code{armv6j},
 @code{armv6k},
 @code{armv6z},
-@code{armv6zk},
+@code{armv6kz},
 @code{armv6-m},
 @code{armv6s-m},
 @code{armv7},
index 8b3d0158bd02ebd45bff13f3f9aaa9d01d4d68f0..84eb9f2575473f30954495b986a4d9497117ef52 100644 (file)
@@ -1,3 +1,8 @@
+2015-07-20  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * gas/arm/attr-march-armv6kz.d: New.
+       * gas/arm/attr-march-armv6kzt2.d: New.
+
 2015-07-16  Jiong Wang  <jiong.wang@arm.com>
 
        * gas/aarch64/reloc-tlsldm-1.s: New testcase.
diff --git a/gas/testsuite/gas/arm/attr-march-armv6kz.d b/gas/testsuite/gas/arm/attr-march-armv6kz.d
new file mode 100644 (file)
index 0000000..fa0b5a0
--- /dev/null
@@ -0,0 +1,14 @@
+# name: attributes for -march=armv6kz
+# source: blank.s
+# as: -march=armv6kz
+# readelf: -A
+# This test is only valid on EABI based ports.
+# target: *-*-*eabi* *-*-nacl*
+
+Attribute Section: aeabi
+File Attributes
+  Tag_CPU_name: "6KZ"
+  Tag_CPU_arch: v6KZ
+  Tag_ARM_ISA_use: Yes
+  Tag_THUMB_ISA_use: Thumb-1
+  Tag_Virtualization_use: TrustZone
diff --git a/gas/testsuite/gas/arm/attr-march-armv6kzt2.d b/gas/testsuite/gas/arm/attr-march-armv6kzt2.d
new file mode 100644 (file)
index 0000000..1672a1f
--- /dev/null
@@ -0,0 +1,14 @@
+# name: attributes for -march=armv6kzt2
+# source: blank.s
+# as: -march=armv6kzt2
+# readelf: -A
+# This test is only valid on EABI based ports.
+# target: *-*-*eabi* *-*-nacl*
+
+Attribute Section: aeabi
+File Attributes
+  Tag_CPU_name: "6KZT2"
+  Tag_CPU_arch: v6T2
+  Tag_ARM_ISA_use: Yes
+  Tag_THUMB_ISA_use: Thumb-2
+  Tag_Virtualization_use: TrustZone
index 2f86116691e87025c16fe4b0d5e6eda13bff9548..9643ce1ce8e7a7a7330653717a66b29ee4fb4f77 100644 (file)
@@ -1,3 +1,10 @@
+2015-07-20  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * arm.h (ARM_AEXT_V6ZK): Rename to ARM_AEXT_V6KZ.
+       (ARM_AEXT_V6ZKT2): Rename to ARM_AEXT_V6KZT2.
+       (ARM_ARCH_V6ZK): Rename to ARM_ARCH_V6KZ.
+       (ARM_ARCH_V6ZKT2): Rename to ARM_ARCH_V6KZT2.
+
 2015-07-03  Alan Modra  <amodra@gmail.com>
 
        * ppc.h (PPC_OPCODE_750, PPC_OPCODE_7450, PPC_OPCODE_860): Define.
index a5aa3a1bf3f9791109bb9d98b17cf23ebda98631..41f056424a74703e197cec8f04c8d9d0f1cc96c7 100644 (file)
 #define ARM_AEXT_V6     (ARM_AEXT_V5TEJ | ARM_EXT_V6)
 #define ARM_AEXT_V6K    (ARM_AEXT_V6    | ARM_EXT_V6K)
 #define ARM_AEXT_V6Z    (ARM_AEXT_V6K  | ARM_EXT_SEC)
-#define ARM_AEXT_V6ZK   (ARM_AEXT_V6K  | ARM_EXT_SEC)
+#define ARM_AEXT_V6KZ   (ARM_AEXT_V6K  | ARM_EXT_SEC)
 #define ARM_AEXT_V6T2   (ARM_AEXT_V6 \
     | ARM_EXT_V6T2 | ARM_EXT_V6_NOTM | ARM_EXT_THUMB_MSR \
     | ARM_EXT_V6_DSP )
 #define ARM_AEXT_V6KT2  (ARM_AEXT_V6T2 | ARM_EXT_V6K)
 #define ARM_AEXT_V6ZT2  (ARM_AEXT_V6T2 | ARM_EXT_SEC)
-#define ARM_AEXT_V6ZKT2 (ARM_AEXT_V6T2 | ARM_EXT_V6K | ARM_EXT_SEC)
+#define ARM_AEXT_V6KZT2 (ARM_AEXT_V6T2 | ARM_EXT_V6K | ARM_EXT_SEC)
 #define ARM_AEXT_V7_ARM        (ARM_AEXT_V6KT2 | ARM_EXT_V7 | ARM_EXT_BARRIER)
 #define ARM_AEXT_V7A   (ARM_AEXT_V7_ARM | ARM_EXT_V7A)
 #define ARM_AEXT_V7VE  (ARM_AEXT_V7A  | ARM_EXT_DIV | ARM_EXT_ADIV \
 #define ARM_ARCH_V6    ARM_FEATURE_CORE_LOW (ARM_AEXT_V6)
 #define ARM_ARCH_V6K   ARM_FEATURE_CORE_LOW (ARM_AEXT_V6K)
 #define ARM_ARCH_V6Z   ARM_FEATURE_CORE_LOW (ARM_AEXT_V6Z)
-#define ARM_ARCH_V6ZK  ARM_FEATURE_CORE_LOW (ARM_AEXT_V6ZK)
+#define ARM_ARCH_V6KZ  ARM_FEATURE_CORE_LOW (ARM_AEXT_V6KZ)
 #define ARM_ARCH_V6T2  ARM_FEATURE_CORE_LOW (ARM_AEXT_V6T2)
 #define ARM_ARCH_V6KT2 ARM_FEATURE_CORE_LOW (ARM_AEXT_V6KT2)
 #define ARM_ARCH_V6ZT2 ARM_FEATURE_CORE_LOW (ARM_AEXT_V6ZT2)
-#define ARM_ARCH_V6ZKT2        ARM_FEATURE_CORE_LOW (ARM_AEXT_V6ZKT2)
+#define ARM_ARCH_V6KZT2        ARM_FEATURE_CORE_LOW (ARM_AEXT_V6KZT2)
 #define ARM_ARCH_V6M   ARM_FEATURE_CORE_LOW (ARM_AEXT_V6M)
 #define ARM_ARCH_V6SM  ARM_FEATURE_CORE_LOW (ARM_AEXT_V6SM)
 #define ARM_ARCH_V7    ARM_FEATURE_CORE_LOW (ARM_AEXT_V7)