summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/ToolChains/MipsLinux.cpp
diff options
context:
space:
mode:
authorPetr Hosek <phosek@chromium.org>2019-03-12 02:12:48 +0000
committerPetr Hosek <phosek@chromium.org>2019-03-12 02:12:48 +0000
commit930d46a2ef6342ac10382e43702db79e2d9082fd (patch)
treef535e01f34d5a8370c48611a0bb2ba51caaee354 /clang/lib/Driver/ToolChains/MipsLinux.cpp
parente8475f78e2634d5d348d7ad746efc1e6526e72f5 (diff)
downloadbcm5719-llvm-930d46a2ef6342ac10382e43702db79e2d9082fd.tar.gz
bcm5719-llvm-930d46a2ef6342ac10382e43702db79e2d9082fd.zip
[Driver] Support object files in addition to static and shared libraries in compiler-rt
This change introduces support for object files in addition to static and shared libraries which were already supported which requires changing the type of the argument from boolean to an enum. Differential Revision: https://reviews.llvm.org/D56044 llvm-svn: 355891
Diffstat (limited to 'clang/lib/Driver/ToolChains/MipsLinux.cpp')
-rw-r--r--clang/lib/Driver/ToolChains/MipsLinux.cpp18
1 files changed, 15 insertions, 3 deletions
diff --git a/clang/lib/Driver/ToolChains/MipsLinux.cpp b/clang/lib/Driver/ToolChains/MipsLinux.cpp
index 47d8363fc46..cfda7f4bb4d 100644
--- a/clang/lib/Driver/ToolChains/MipsLinux.cpp
+++ b/clang/lib/Driver/ToolChains/MipsLinux.cpp
@@ -118,11 +118,23 @@ void MipsLLVMToolChain::AddCXXStdlibLibArgs(const ArgList &Args,
std::string MipsLLVMToolChain::getCompilerRT(const ArgList &Args,
StringRef Component,
- bool Shared) const {
+ FileType Type) const {
SmallString<128> Path(getDriver().ResourceDir);
llvm::sys::path::append(Path, SelectedMultilib.osSuffix(), "lib" + LibSuffix,
getOS());
- llvm::sys::path::append(Path, Twine("libclang_rt." + Component + "-" +
- "mips" + (Shared ? ".so" : ".a")));
+ const char *Suffix;
+ switch (Type) {
+ case ToolChain::FT_Object:
+ Suffix = ".o";
+ break;
+ case ToolChain::FT_Static:
+ Suffix = ".a";
+ break;
+ case ToolChain::FT_Shared:
+ Suffix = ".so";
+ break;
+ }
+ llvm::sys::path::append(
+ Path, Twine("libclang_rt." + Component + "-" + "mips" + Suffix));
return Path.str();
}
OpenPOWER on IntegriCloud