summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2011-12-07 04:00:53 +0000
committerEli Friedman <eli.friedman@gmail.com>2011-12-07 04:00:53 +0000
commit1f1e35e0341329c0de6b978fa14a71c94773d113 (patch)
tree45c429843b0444f3dfb51cf2e4ddf78b94ca1850 /clang/lib
parentf9081a8afef5024b2ece67d1a101aaaf4bd3933e (diff)
downloadbcm5719-llvm-1f1e35e0341329c0de6b978fa14a71c94773d113.tar.gz
bcm5719-llvm-1f1e35e0341329c0de6b978fa14a71c94773d113.zip
Fix multilib library paths on ppc64 Linux. Patch by Michael Kostylev. PR11472.
llvm-svn: 146016
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/Driver/ToolChains.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/clang/lib/Driver/ToolChains.cpp b/clang/lib/Driver/ToolChains.cpp
index 77831be9982..fa4cf418893 100644
--- a/clang/lib/Driver/ToolChains.cpp
+++ b/clang/lib/Driver/ToolChains.cpp
@@ -1894,8 +1894,15 @@ Linux::Linux(const HostInfo &Host, const llvm::Triple &Triple)
getArch() == llvm::Triple::mipsel ||
getArch() == llvm::Triple::ppc);
- const std::string Suffix32 = Arch == llvm::Triple::x86_64 ? "/32" : "";
- const std::string Suffix64 = Arch == llvm::Triple::x86_64 ? "" : "/64";
+ StringRef Suffix32;
+ StringRef Suffix64;
+ if (Arch == llvm::Triple::x86_64 || Arch == llvm::Triple::ppc64) {
+ Suffix32 = "/32";
+ Suffix64 = "";
+ } else {
+ Suffix32 = "";
+ Suffix64 = "/64";
+ }
const std::string Suffix = Is32Bits ? Suffix32 : Suffix64;
const std::string Multilib = Is32Bits ? "lib32" : "lib64";
const std::string MultiarchTriple = getMultiarchTriple(Triple, SysRoot);
OpenPOWER on IntegriCloud