@@ -1561,7 +1561,6 @@ void tools::addAsNeededOption(const ToolChain &TC,
15611561
15621562void tools::linkSanitizerRuntimeDeps (const ToolChain &TC,
15631563 const llvm::opt::ArgList &Args,
1564- const SanitizerArgs &SanArgs,
15651564 ArgStringList &CmdArgs) {
15661565 // Force linking against the system libraries sanitizers depends on
15671566 // (see PR15823 why this is necessary).
@@ -1588,18 +1587,18 @@ void tools::linkSanitizerRuntimeDeps(const ToolChain &TC,
15881587 // libresolv.a, even if exists, is an empty archive to satisfy POSIX -lresolv
15891588 // requirement.
15901589 if (TC.getTriple ().isOSLinux () && !TC.getTriple ().isAndroid () &&
1591- !TC.getTriple ().isMusl () && SanArgs. needsMsanRt () )
1590+ !TC.getTriple ().isMusl ())
15921591 CmdArgs.push_back (" -lresolv" );
15931592}
15941593
15951594static void
15961595collectSanitizerRuntimes (const ToolChain &TC, const ArgList &Args,
1597- const SanitizerArgs &SanArgs,
15981596 SmallVectorImpl<StringRef> &SharedRuntimes,
15991597 SmallVectorImpl<StringRef> &StaticRuntimes,
16001598 SmallVectorImpl<StringRef> &NonWholeStaticRuntimes,
16011599 SmallVectorImpl<StringRef> &HelperStaticRuntimes,
16021600 SmallVectorImpl<StringRef> &RequiredSymbols) {
1601+ const SanitizerArgs &SanArgs = TC.getSanitizerArgs (Args);
16031602 // Collect shared runtimes.
16041603 if (SanArgs.needsSharedRt ()) {
16051604 if (SanArgs.needsAsanRt ()) {
@@ -1733,12 +1732,12 @@ collectSanitizerRuntimes(const ToolChain &TC, const ArgList &Args,
17331732// Should be called before we add system libraries (C++ ABI, libstdc++/libc++,
17341733// C runtime, etc). Returns true if sanitizer system deps need to be linked in.
17351734bool tools::addSanitizerRuntimes (const ToolChain &TC, const ArgList &Args,
1736- const SanitizerArgs &SanArgs,
17371735 ArgStringList &CmdArgs) {
1736+ const SanitizerArgs &SanArgs = TC.getSanitizerArgs (Args);
17381737 SmallVector<StringRef, 4 > SharedRuntimes, StaticRuntimes,
17391738 NonWholeStaticRuntimes, HelperStaticRuntimes, RequiredSymbols;
17401739 if (SanArgs.linkRuntimes ()) {
1741- collectSanitizerRuntimes (TC, Args, SanArgs, SharedRuntimes, StaticRuntimes,
1740+ collectSanitizerRuntimes (TC, Args, SharedRuntimes, StaticRuntimes,
17421741 NonWholeStaticRuntimes, HelperStaticRuntimes,
17431742 RequiredSymbols);
17441743 }
0 commit comments