diff options
author | Vitaly Buka <vitalybuka@google.com> | 2020-12-05 20:42:16 -0800 |
---|---|---|
committer | Vitaly Buka <vitalybuka@google.com> | 2020-12-05 21:11:04 -0800 |
commit | 19e7741fef775b2f4f497c44b6aeab350f43f9a7 (patch) | |
tree | 5dd154d063041284dd44228f97361fc5047f6134 /llvm/lib/Target/TargetMachine.cpp | |
parent | 5bc9c858e34026462070dbe0f937d4f243682bef (diff) | |
download | llvm-19e7741fef775b2f4f497c44b6aeab350f43f9a7.zip llvm-19e7741fef775b2f4f497c44b6aeab350f43f9a7.tar.gz llvm-19e7741fef775b2f4f497c44b6aeab350f43f9a7.tar.bz2 |
[TargetMachine] Set dso_local for memprof
Similar to 5582a7987662a92eda5d883b88fc4586e755acf5
Diffstat (limited to 'llvm/lib/Target/TargetMachine.cpp')
-rw-r--r-- | llvm/lib/Target/TargetMachine.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/llvm/lib/Target/TargetMachine.cpp b/llvm/lib/Target/TargetMachine.cpp index f214a47..d9c8945 100644 --- a/llvm/lib/Target/TargetMachine.cpp +++ b/llvm/lib/Target/TargetMachine.cpp @@ -163,10 +163,11 @@ bool TargetMachine::shouldAssumeDSOLocal(const Module &M, // If the symbol is defined, it cannot be preempted. if (!GV->isDeclarationForLinker()) return true; - // FIXME asan does not call setDSOLocal appropriately. Fix asan and delete - // the hack. + // FIXME Sanitizers do not call setDSOLocal appropriately. Fix sanitizers + // and delete the hack. if (RM == Reloc::Static && !GV->isThreadLocal() && - M.getFunction("asan.module_ctor")) + (M.getFunction("asan.module_ctor") || + M.getFunction("memprof.module_ctor"))) return true; } else if (TT.isOSBinFormatELF()) { // If dso_local allows AsmPrinter::getSymbolPreferLocal to use a local |