Refactor duplicate functions
getARMCPU and getLLVMArchSuffixForARM existed as very similar functions
in both ToolChain.cpp and Tools.cpp. Create a single implementation of
each in Tools.cpp, eliminate the duplicate and share via Tools.h.
Creates an 'arm' namespace in Tools.h to be used by any ARM-targetting tools.
llvm-svn: 197153
diff --git a/clang/lib/Driver/Tools.h b/clang/lib/Driver/Tools.h
index b2dd6d9..562352f 100644
--- a/clang/lib/Driver/Tools.h
+++ b/clang/lib/Driver/Tools.h
@@ -201,6 +201,13 @@
};
} // end namespace hexagon.
+namespace arm {
+ const char* getARMTargetCPU(const llvm::opt::ArgList &Args,
+ const llvm::Triple &Triple);
+ const char* getARMCPUForMArch(const llvm::opt::ArgList &Args,
+ const llvm::Triple &Triple);
+ const char* getLLVMArchSuffixForARM(StringRef CPU);
+}
namespace darwin {
llvm::Triple::ArchType getArchTypeForDarwinArchName(StringRef Str);