diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 96cc1cfaf4b5..5f7f75d44043 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -3217,6 +3217,7 @@ public: .Cases("arm1136jf-s", "mpcorenovfp", "mpcore", "6K") .Cases("arm1156t2-s", "arm1156t2f-s", "6T2") .Cases("cortex-a5", "cortex-a8", "cortex-a9", "cortex-a15", "7A") + .Case("cortex-r5", "7R") .Case("cortex-a9-mp", "7F") .Case("swift", "7S") .Cases("cortex-m3", "cortex-m4", "7M") @@ -3227,6 +3228,7 @@ public: return llvm::StringSwitch(Name) .Cases("cortex-a8", "cortex-a9", "A") .Cases("cortex-m3", "cortex-m4", "cortex-m0", "M") + .Case("cortex-r5", "R") .Default(""); } virtual bool setCPU(const std::string &Name) { diff --git a/clang/lib/Driver/ToolChain.cpp b/clang/lib/Driver/ToolChain.cpp index df7de736e89b..5c2d19a13276 100644 --- a/clang/lib/Driver/ToolChain.cpp +++ b/clang/lib/Driver/ToolChain.cpp @@ -112,7 +112,7 @@ static const char *getARMTargetCPU(const ArgList &Args, .Cases("armv7", "armv7a", "armv7-a", "cortex-a8") .Cases("armv7f", "armv7-f", "cortex-a9-mp") .Cases("armv7s", "armv7-s", "swift") - .Cases("armv7r", "armv7-r", "cortex-r4") + .Cases("armv7r", "armv7-r", "cortex-r4", "cortex-r5") .Cases("armv7m", "armv7-m", "cortex-m3") .Case("ep9312", "ep9312") .Case("iwmmxt", "iwmmxt") diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index 60abb1579d97..b6da7dd64bf6 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -469,6 +469,7 @@ static const char *getLLVMArchSuffixForARM(StringRef CPU) { .Cases("arm1176jzf-s", "mpcorenovfp", "mpcore", "v6") .Cases("arm1156t2-s", "arm1156t2f-s", "v6t2") .Cases("cortex-a5", "cortex-a8", "cortex-a9", "cortex-a15", "v7") + .Case("cortex-r5", "v7r") .Case("cortex-m3", "v7m") .Case("cortex-m4", "v7m") .Case("cortex-m0", "v6m")