forked from OSchip/llvm-project
[ASan] Not linking asan_static library for DSO.
Without this change DSOs fail to link because of missing asan_report_(load|store)n functions. Reviewed By: kda Differential Revision: https://reviews.llvm.org/D118184
This commit is contained in:
parent
fe30370b00
commit
cf730d8ce1
|
@ -826,16 +826,16 @@ collectSanitizerRuntimes(const ToolChain &TC, const ArgList &Args,
|
|||
if (SanArgs.needsStatsRt() && SanArgs.linkRuntimes())
|
||||
StaticRuntimes.push_back("stats_client");
|
||||
|
||||
// Always link the static runtime regardless of DSO or executable.
|
||||
if (SanArgs.needsAsanRt())
|
||||
HelperStaticRuntimes.push_back("asan_static");
|
||||
|
||||
// Collect static runtimes.
|
||||
if (Args.hasArg(options::OPT_shared)) {
|
||||
// Don't link static runtimes into DSOs.
|
||||
return;
|
||||
}
|
||||
|
||||
// Always link the static runtime for executable.
|
||||
if (SanArgs.needsAsanRt())
|
||||
HelperStaticRuntimes.push_back("asan_static");
|
||||
|
||||
// Each static runtime that has a DSO counterpart above is excluded below,
|
||||
// but runtimes that exist only as static are not affected by needsSharedRt.
|
||||
|
||||
|
|
Loading…
Reference in New Issue