diff options
| author | Ed Maste <emaste@freebsd.org> | 2016-10-14 17:59:53 +0000 |
|---|---|---|
| committer | Ed Maste <emaste@freebsd.org> | 2016-10-14 17:59:53 +0000 |
| commit | aaa44fe5cd376c059ba72fdc02fb939b8f68391d (patch) | |
| tree | f4aa4313b76e39d2c6def96279dba300cf2284da /clang/lib | |
| parent | 445bd12621ea972f70eced92a0e79586c6050217 (diff) | |
| download | bcm5719-llvm-aaa44fe5cd376c059ba72fdc02fb939b8f68391d.tar.gz bcm5719-llvm-aaa44fe5cd376c059ba72fdc02fb939b8f68391d.zip | |
Link static PIE programs against rcrt0.o on OpenBSD
Patch by Stefan Kempf.
Differential Revision: https://reviews.llvm.org/D22130
llvm-svn: 284256
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Driver/Tools.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index b7a323faa56..e073eddc365 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -8519,6 +8519,10 @@ void openbsd::Linker::ConstructJob(Compilation &C, const JobAction &JA, if (Args.hasArg(options::OPT_pg)) CmdArgs.push_back( Args.MakeArgString(getToolChain().GetFilePath("gcrt0.o"))); + else if (Args.hasArg(options::OPT_static) && + !Args.hasArg(options::OPT_nopie)) + CmdArgs.push_back( + Args.MakeArgString(getToolChain().GetFilePath("rcrt0.o"))); else CmdArgs.push_back( Args.MakeArgString(getToolChain().GetFilePath("crt0.o"))); |

