Index: include/llvm/Support/ARMTargetParser.def =================================================================== --- include/llvm/Support/ARMTargetParser.def +++ include/llvm/Support/ARMTargetParser.def @@ -70,9 +70,7 @@ AEK_DSP) ARM_ARCH("armv6t2", AK_ARMV6T2, "6T2", "v6t2", ARMBuildAttrs::CPUArch::v6T2, AEK_DSP) -ARM_ARCH("armv6z", AK_ARMV6Z, "6Z", "v6z", ARMBuildAttrs::CPUArch::v6KZ, - (AEK_SEC | AEK_DSP)) -ARM_ARCH("armv6zk", AK_ARMV6ZK, "6ZK", "v6zk", ARMBuildAttrs::CPUArch::v6KZ, +ARM_ARCH("armv6kz", AK_ARMV6KZ, "6KZ", "v6kz", ARMBuildAttrs::CPUArch::v6KZ, (AEK_SEC | AEK_DSP)) ARM_ARCH("armv6-m", AK_ARMV6M, "6-M", "v6m", ARMBuildAttrs::CPUArch::v6_M, AEK_NONE) @@ -185,13 +183,11 @@ ARM_CPU_NAME("xscale", AK_ARMV5TE, FK_NONE, false, AEK_NONE) ARM_CPU_NAME("arm926ej-s", AK_ARMV5TEJ, FK_NONE, true, AEK_NONE) ARM_CPU_NAME("arm1136jf-s", AK_ARMV6, FK_VFPV2, true, AEK_NONE) -ARM_CPU_NAME("arm1176j-s", AK_ARMV6K, FK_NONE, false, AEK_NONE) -ARM_CPU_NAME("arm1176jz-s", AK_ARMV6K, FK_NONE, false, AEK_NONE) +ARM_CPU_NAME("arm1176j-s", AK_ARMV6K, FK_NONE, true, AEK_NONE) +ARM_CPU_NAME("arm1176jz-s", AK_ARMV6KZ, FK_NONE, false, AEK_NONE) ARM_CPU_NAME("mpcore", AK_ARMV6K, FK_VFPV2, false, AEK_NONE) ARM_CPU_NAME("mpcorenovfp", AK_ARMV6K, FK_NONE, false, AEK_NONE) -ARM_CPU_NAME("arm1176jzf-s", AK_ARMV6K, FK_VFPV2, true, AEK_NONE) -ARM_CPU_NAME("arm1176jzf-s", AK_ARMV6Z, FK_VFPV2, true, AEK_NONE) -ARM_CPU_NAME("arm1176jzf-s", AK_ARMV6ZK, FK_VFPV2, true, AEK_NONE) +ARM_CPU_NAME("arm1176jzf-s", AK_ARMV6KZ, FK_VFPV2, true, AEK_NONE) ARM_CPU_NAME("arm1156t2-s", AK_ARMV6T2, FK_NONE, true, AEK_NONE) ARM_CPU_NAME("arm1156t2f-s", AK_ARMV6T2, FK_VFPV2, false, AEK_NONE) ARM_CPU_NAME("cortex-m0", AK_ARMV6M, FK_NONE, true, AEK_NONE) Index: lib/Support/TargetParser.cpp =================================================================== --- lib/Support/TargetParser.cpp +++ lib/Support/TargetParser.cpp @@ -369,6 +369,7 @@ static StringRef getArchSynonym(StringRef Arch) { return StringSwitch(Arch) + .Cases("v6z", "v6zk", "v6kz") .Case("v6sm", "v6s-m") .Case("v6m", "v6-m") .Case("v7a", "v7-a") @@ -555,8 +556,7 @@ case ARM::AK_ARMV6J: case ARM::AK_ARMV6K: case ARM::AK_ARMV6T2: - case ARM::AK_ARMV6Z: - case ARM::AK_ARMV6ZK: + case ARM::AK_ARMV6KZ: case ARM::AK_ARMV6M: case ARM::AK_ARMV6SM: case ARM::AK_ARMV6HL: Index: lib/Support/Triple.cpp =================================================================== --- lib/Support/Triple.cpp +++ lib/Support/Triple.cpp @@ -499,10 +499,9 @@ return Triple::ARMSubArch_v5te; case ARM::AK_ARMV6: case ARM::AK_ARMV6J: - case ARM::AK_ARMV6Z: return Triple::ARMSubArch_v6; case ARM::AK_ARMV6K: - case ARM::AK_ARMV6ZK: + case ARM::AK_ARMV6KZ: case ARM::AK_ARMV6HL: return Triple::ARMSubArch_v6k; case ARM::AK_ARMV6T2: Index: lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp =================================================================== --- lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp +++ lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp @@ -720,8 +720,7 @@ break; case ARM::AK_ARMV6K: - case ARM::AK_ARMV6Z: - case ARM::AK_ARMV6ZK: + case ARM::AK_ARMV6KZ: setAttributeItem(ARM_ISA_use, Allowed, false); setAttributeItem(THUMB_ISA_use, Allowed, false); setAttributeItem(Virtualization_use, AllowTZ, false); Index: test/MC/ARM/directive-arch-armv6z.s =================================================================== --- test/MC/ARM/directive-arch-armv6z.s +++ test/MC/ARM/directive-arch-armv6z.s @@ -11,12 +11,12 @@ .syntax unified .arch armv6z -@ CHECK-ASM: .arch armv6z +@ CHECK-ASM: .arch armv6kz @ CHECK-ATTR: FileAttributes { @ CHECK-ATTR: Attribute { @ CHECK-ATTR: TagName: CPU_name -@ CHECK-ATTR: Value: 6Z +@ CHECK-ATTR: Value: 6KZ @ CHECK-ATTR: } @ CHECK-ATTR: Attribute { @ CHECK-ATTR: TagName: CPU_arch Index: test/MC/ARM/directive-arch-armv6zk.s =================================================================== --- test/MC/ARM/directive-arch-armv6zk.s +++ test/MC/ARM/directive-arch-armv6zk.s @@ -1,38 +0,0 @@ -@ Test the .arch directive for armv6zk - -@ This test case will check the default .ARM.attributes value for the -@ armv6zk architecture. - -@ RUN: llvm-mc -triple arm-eabi -filetype asm %s \ -@ RUN: | FileCheck %s -check-prefix CHECK-ASM -@ RUN: llvm-mc -triple arm-eabi -filetype obj %s \ -@ RUN: | llvm-readobj -arm-attributes | FileCheck %s -check-prefix CHECK-ATTR - - .syntax unified - .arch armv6zk - -@ CHECK-ASM: .arch armv6zk - -@ CHECK-ATTR: FileAttributes { -@ CHECK-ATTR: Attribute { -@ CHECK-ATTR: TagName: CPU_name -@ CHECK-ATTR: Value: 6ZK -@ CHECK-ATTR: } -@ CHECK-ATTR: Attribute { -@ CHECK-ATTR: TagName: CPU_arch -@ CHECK-ATTR: Description: ARM v6KZ -@ CHECK-ATTR: } -@ CHECK-ATTR: Attribute { -@ CHECK-ATTR: TagName: ARM_ISA_use -@ CHECK-ATTR: Description: Permitted -@ CHECK-ATTR: } -@ CHECK-ATTR: Attribute { -@ CHECK-ATTR: TagName: THUMB_ISA_use -@ CHECK-ATTR: Description: Thumb-1 -@ CHECK-ATTR: } -@ CHECK-ATTR: Attribute { -@ CHECK-ATTR: TagName: Virtualization_use -@ CHECK-ATTR: Description: TrustZone -@ CHECK-ATTR: } -@ CHECK-ATTR: } - Index: unittests/ADT/TripleTest.cpp =================================================================== --- unittests/ADT/TripleTest.cpp +++ unittests/ADT/TripleTest.cpp @@ -856,10 +856,10 @@ } { llvm::Triple Triple("armv6k-unknown-eabi"); - EXPECT_EQ("arm1176jzf-s", Triple.getARMCPUForArch()); + EXPECT_EQ("arm1176j-s", Triple.getARMCPUForArch()); } { - llvm::Triple Triple("armv6zk-unknown-eabi"); + llvm::Triple Triple("armv6kz-unknown-eabi"); EXPECT_EQ("arm1176jzf-s", Triple.getARMCPUForArch()); } {