From aaa44fe5cd376c059ba72fdc02fb939b8f68391d Mon Sep 17 00:00:00 2001 From: Ed Maste Date: Fri, 14 Oct 2016 17:59:53 +0000 Subject: Link static PIE programs against rcrt0.o on OpenBSD Patch by Stefan Kempf. Differential Revision: https://reviews.llvm.org/D22130 llvm-svn: 284256 --- clang/lib/Driver/Tools.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'clang/lib') 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"))); -- cgit v1.2.3