summaryrefslogtreecommitdiffstats
path: root/gnu/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp')
-rw-r--r--gnu/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/gnu/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp b/gnu/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp
index 541323127f9..7c7e1c70e55 100644
--- a/gnu/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp
+++ b/gnu/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp
@@ -86,6 +86,18 @@ std::string ppc::getPPCTargetCPU(const ArgList &Args) {
return "";
}
+const char *ppc::getPPCAsmModeForCPU(StringRef Name) {
+ return llvm::StringSwitch<const char *>(Name)
+ .Case("pwr7", "-mpower7")
+ .Case("power7", "-mpower7")
+ .Case("pwr8", "-mpower8")
+ .Case("power8", "-mpower8")
+ .Case("ppc64le", "-mpower8")
+ .Case("pwr9", "-mpower9")
+ .Case("power9", "-mpower9")
+ .Default("-many");
+}
+
void ppc::getPPCTargetFeatures(const Driver &D, const llvm::Triple &Triple,
const ArgList &Args,
std::vector<StringRef> &Features) {