summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Tools.cpp
diff options
context:
space:
mode:
authorDavid Chisnall <csdavec@swan.ac.uk>2012-03-13 14:14:54 +0000
committerDavid Chisnall <csdavec@swan.ac.uk>2012-03-13 14:14:54 +0000
commitddc4c9d0a73fcb1957728c6d2d00ed5020518320 (patch)
tree1c1b460e105f812c58ddf22b6a7afe6e41725380 /clang/lib/Driver/Tools.cpp
parent395ac42dd249ed5a17be8b3150d84a181b6757b1 (diff)
downloadbcm5719-llvm-ddc4c9d0a73fcb1957728c6d2d00ed5020518320.tar.gz
bcm5719-llvm-ddc4c9d0a73fcb1957728c6d2d00ed5020518320.zip
Tweak linkage order for solaris.
llvm-svn: 152627
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r--clang/lib/Driver/Tools.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index acd8b3a9451..4c054241921 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -4301,11 +4301,12 @@ void solaris::Link::ConstructJob(Compilation &C, const JobAction &JA,
CmdArgs.push_back(Args.MakeArgString(LibPath + "values-Xa.o"));
CmdArgs.push_back(Args.MakeArgString(GCCLibPath + "crtbegin.o"));
} else {
- CmdArgs.push_back(Args.MakeArgString(LibPath + "cxa_finalize.o"));
CmdArgs.push_back(Args.MakeArgString(LibPath + "crti.o"));
CmdArgs.push_back(Args.MakeArgString(LibPath + "values-Xa.o"));
CmdArgs.push_back(Args.MakeArgString(GCCLibPath + "crtbegin.o"));
}
+ if (getToolChain().getDriver().CCCIsCXX)
+ CmdArgs.push_back(Args.MakeArgString(LibPath + "cxa_finalize.o"));
}
CmdArgs.push_back(Args.MakeArgString("-L" + GCCLibPath));
OpenPOWER on IntegriCloud