Skip to content

Commit 5d0641d

Browse files
committed
[Legacy-Flang][Driver][ASan] Add default rpath of host-asan
library(libclang_rt.asan.x86_64.so)) for OpenMP Offloading applications when ASan.
1 parent 9ecfff6 commit 5d0641d

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

flang-legacy/17.0-4/llvm-legacy/clang/lib/Driver/ToolChains/CommonArgs.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -949,8 +949,16 @@ void tools::addOpenMPRuntimeSpecificRPath(const ToolChain &TC,
949949
SmallString<256> DefaultLibPath =
950950
llvm::sys::path::parent_path(TC.getDriver().Dir);
951951
llvm::sys::path::append(DefaultLibPath, CLANG_INSTALL_LIBDIR_BASENAME);
952+
if (TC.getSanitizerArgs(Args).needsAsanRt()) {
953+
CmdArgs.push_back("-rpath");
954+
CmdArgs.push_back(Args.MakeArgString(TC.getCompilerRTPath()));
955+
}
952956
CmdArgs.push_back("-rpath");
953957
CmdArgs.push_back(Args.MakeArgString(CandidateRPath.c_str()));
958+
if (llvm::find_if(CmdArgs, [](StringRef str) {
959+
return !str.compare("--enable-new-dtags");
960+
}) == CmdArgs.end())
961+
CmdArgs.push_back("--disable-new-dtags");
954962
}
955963
}
956964

flang-legacy/17.0-4/llvm-legacy/clang/lib/Driver/ToolChains/Gnu.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -568,8 +568,6 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
568568
// Add Fortran runtime libraries
569569
if (needFortranLibs(D, Args)) {
570570
ToolChain.AddFortranStdlibLibArgs(Args, CmdArgs);
571-
CmdArgs.push_back("-rpath");
572-
CmdArgs.push_back(Args.MakeArgString(D.Dir + "/../lib"));
573571
} else {
574572
// Claim "no Flang libraries" arguments if any
575573
for (auto Arg : Args.filtered(options::OPT_noFlangLibs)) {

0 commit comments

Comments
 (0)