]> granicus.if.org Git - clang/commitdiff
Fix multilib library paths on ppc64 Linux. Patch by Michael Kostylev. PR11472.
authorEli Friedman <eli.friedman@gmail.com>
Wed, 7 Dec 2011 04:00:53 +0000 (04:00 +0000)
committerEli Friedman <eli.friedman@gmail.com>
Wed, 7 Dec 2011 04:00:53 +0000 (04:00 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146016 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Driver/ToolChains.cpp

index 77831be99826b1c5785eb7d16459928205a482c3..fa4cf418893fbf76ac739c8be6bfdbf2974e715c 100644 (file)
@@ -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);