This patch introduces A15 as a target in Clang.
llvm-svn: 163804
This commit is contained in:
parent
b47bb94f93
commit
157f7c6742
|
@ -2936,7 +2936,7 @@ public:
|
|||
void getDefaultFeatures(llvm::StringMap<bool> &Features) const {
|
||||
if (CPU == "arm1136jf-s" || CPU == "arm1176jzf-s" || CPU == "mpcore")
|
||||
Features["vfp2"] = true;
|
||||
else if (CPU == "cortex-a8" || CPU == "cortex-a9")
|
||||
else if (CPU == "cortex-a8" || CPU == "cortex-a9" || CPU == "cortex-a15")
|
||||
Features["neon"] = true;
|
||||
}
|
||||
|
||||
|
@ -3005,7 +3005,7 @@ public:
|
|||
.Cases("arm1176jz-s", "arm1176jzf-s", "6ZK")
|
||||
.Cases("arm1136jf-s", "mpcorenovfp", "mpcore", "6K")
|
||||
.Cases("arm1156t2-s", "arm1156t2f-s", "6T2")
|
||||
.Cases("cortex-a8", "cortex-a9", "7A")
|
||||
.Cases("cortex-a8", "cortex-a9", "cortex-a15", "7A")
|
||||
.Cases("cortex-m3", "cortex-m4", "7M")
|
||||
.Case("cortex-m0", "6M")
|
||||
.Default(0);
|
||||
|
|
|
@ -119,7 +119,7 @@ static const char *getLLVMArchSuffixForARM(StringRef CPU) {
|
|||
.Cases("arm1136j-s", "arm1136jf-s", "arm1176jz-s", "v6")
|
||||
.Cases("arm1176jzf-s", "mpcorenovfp", "mpcore", "v6")
|
||||
.Cases("arm1156t2-s", "arm1156t2f-s", "v6t2")
|
||||
.Cases("cortex-a8", "cortex-a9", "v7")
|
||||
.Cases("cortex-a8", "cortex-a9", "cortex-a15", "v7")
|
||||
.Case("cortex-m3", "v7m")
|
||||
.Case("cortex-m4", "v7m")
|
||||
.Case("cortex-m0", "v6m")
|
||||
|
|
|
@ -122,7 +122,8 @@ static const char *GetArmArchForMCpu(StringRef Value) {
|
|||
.Case("xscale", "xscale")
|
||||
.Cases("arm1136j-s", "arm1136jf-s", "arm1176jz-s",
|
||||
"arm1176jzf-s", "cortex-m0", "armv6")
|
||||
.Cases("cortex-a8", "cortex-r4", "cortex-m3", "cortex-a9", "armv7")
|
||||
.Cases("cortex-a8", "cortex-r4", "cortex-m3", "cortex-a9", "cortex-a15",
|
||||
"armv7")
|
||||
.Default(0);
|
||||
}
|
||||
|
||||
|
|
|
@ -442,7 +442,7 @@ static const char *getLLVMArchSuffixForARM(StringRef CPU) {
|
|||
.Cases("arm1136j-s", "arm1136jf-s", "arm1176jz-s", "v6")
|
||||
.Cases("arm1176jzf-s", "mpcorenovfp", "mpcore", "v6")
|
||||
.Cases("arm1156t2-s", "arm1156t2f-s", "v6t2")
|
||||
.Cases("cortex-a8", "cortex-a9", "v7")
|
||||
.Cases("cortex-a8", "cortex-a9", "cortex-a15", "v7")
|
||||
.Case("cortex-m3", "v7m")
|
||||
.Case("cortex-m4", "v7m")
|
||||
.Case("cortex-m0", "v6m")
|
||||
|
@ -576,7 +576,8 @@ static void addFPMathArgs(const Driver &D, const Arg *A, const ArgList &Args,
|
|||
CmdArgs.push_back("-target-feature");
|
||||
CmdArgs.push_back("+neonfp");
|
||||
|
||||
if (CPU != "cortex-a8" && CPU != "cortex-a9" && CPU != "cortex-a9-mp")
|
||||
if (CPU != "cortex-a8" && CPU != "cortex-a9" && CPU != "cortex-a9-mp" &&
|
||||
CPU != "cortex-a15")
|
||||
D.Diag(diag::err_drv_invalid_feature) << "-mfpmath=neon" << CPU;
|
||||
|
||||
} else if (FPMath == "vfp" || FPMath == "vfp2" || FPMath == "vfp3" ||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
// RUN: %clang -ccc-host-triple armv7-none-linux-gnueabi -mcpu=cortex-a15 -emit-llvm -S %s -o /dev/null
|
||||
|
||||
int main() {
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue