Add support for passing '-target armv8' through the Driver.

llvm-svn: 184970
This commit is contained in:
Joey Gouly 2013-06-26 17:19:48 +00:00
parent 4c5b2d1de6
commit d077bc6a20
5 changed files with 9 additions and 2 deletions

View File

@ -3750,6 +3750,7 @@ public:
.Case("swift", "7S")
.Cases("cortex-m3", "cortex-m4", "7M")
.Case("cortex-m0", "6M")
.Case("cortex-a53", "8A")
.Default(0);
}
static const char *getCPUProfile(StringRef Name) {

View File

@ -195,6 +195,7 @@ static const char *getARMTargetCPU(const ArgList &Args,
.Cases("armv7r", "armv7-r", "cortex-r4")
.Cases("armv7m", "armv7-m", "cortex-m3")
.Cases("armv7em", "armv7e-m", "cortex-m4")
.Cases("armv8", "armv8a", "armv8-a", "cortex-a53")
.Case("ep9312", "ep9312")
.Case("iwmmxt", "iwmmxt")
.Case("xscale", "xscale")
@ -230,6 +231,7 @@ static const char *getLLVMArchSuffixForARM(StringRef CPU) {
.Case("cortex-m4", "v7em")
.Case("cortex-a9-mp", "v7f")
.Case("swift", "v7s")
.Case("cortex-a53", "v8")
.Default("");
}

View File

@ -112,6 +112,7 @@ static const char *GetArmArchForMArch(StringRef Value) {
.Cases("armv7k", "armv7-k", "armv7k")
.Cases("armv7m", "armv7-m", "armv7m")
.Cases("armv7s", "armv7-s", "armv7s")
.Cases("armv8", "armv8a", "armv8-a", "armv8")
.Default(0);
}

View File

@ -528,6 +528,7 @@ static std::string getARMTargetCPU(const ArgList &Args,
.Cases("armv7s", "armv7-s", "swift")
.Cases("armv7r", "armv7-r", "cortex-r4")
.Cases("armv7m", "armv7-m", "cortex-m3")
.Cases("armv8", "armv8a", "armv8-a", "cortex-a53")
.Case("ep9312", "ep9312")
.Case("iwmmxt", "iwmmxt")
.Case("xscale", "xscale")

View File

@ -1,3 +1,5 @@
// RUN: %clang -target armv7a-unknown-linux-gnueabi -S -emit-llvm %s -o - | FileCheck %s
// RUN: %clang -target armv7a-unknown-linux-gnueabi -S -emit-llvm %s -o - | FileCheck %s --check-prefix=V7
// RUN: %clang -target armv8a-unknown-linux-gnueabi -S -emit-llvm %s -o - | FileCheck %s --check-prefix=V8
// CHECK: target triple = "armv7-unknown-linux-gnueabi"
// V7: target triple = "armv7-unknown-linux-gnueabi"
// V8: target triple = "armv8-unknown-linux-gnueabi"