[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 d024f40..5ea9714 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 986325d..02a8d00 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 a76b4ca..7b3b5c9 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 7fadd28..e41943b 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 8b3d015..84eb9f2 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 2f86116..9643ce1 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 a5aa3a1..41f0564 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)