summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Tools.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2014-01-10 08:18:34 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2014-01-10 08:18:34 +0000
commit73cb84c271bd905d8f5c5c5d70c4b91ae8d1bf16 (patch)
tree39887db21a51a33e674c3990829c0e7c43e3cf30 /clang/lib/Driver/Tools.cpp
parenta6afef7a512314e078054038c391c2903d608a13 (diff)
downloadbcm5719-llvm-73cb84c271bd905d8f5c5c5d70c4b91ae8d1bf16.tar.gz
bcm5719-llvm-73cb84c271bd905d8f5c5c5d70c4b91ae8d1bf16.zip
Use the right dynamic linker for SPARC Linux executables.
llvm-svn: 198923
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r--clang/lib/Driver/Tools.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index a9aeab01514..9a43afe7d46 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -6440,7 +6440,8 @@ static StringRef getLinuxDynamicLinker(const ArgList &Args,
const toolchains::Linux &ToolChain) {
if (ToolChain.getTriple().getEnvironment() == llvm::Triple::Android)
return "/system/bin/linker";
- else if (ToolChain.getArch() == llvm::Triple::x86)
+ else if (ToolChain.getArch() == llvm::Triple::x86 ||
+ ToolChain.getArch() == llvm::Triple::sparc)
return "/lib/ld-linux.so.2";
else if (ToolChain.getArch() == llvm::Triple::aarch64)
return "/lib/ld-linux-aarch64.so.1";
@@ -6465,6 +6466,8 @@ static StringRef getLinuxDynamicLinker(const ArgList &Args,
ToolChain.getArch() == llvm::Triple::ppc64le ||
ToolChain.getArch() == llvm::Triple::systemz)
return "/lib64/ld64.so.1";
+ else if (ToolChain.getArch() == llvm::Triple::sparcv9)
+ return "/lib64/ld-linux.so.2";
else
return "/lib64/ld-linux-x86-64.so.2";
}
OpenPOWER on IntegriCloud