summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAlexey Samsonov <vonosmas@gmail.com>2014-05-31 00:33:05 +0000
committerAlexey Samsonov <vonosmas@gmail.com>2014-05-31 00:33:05 +0000
commit41dac4aa87a7eba67c2722f1abf26bb97b3a5f6f (patch)
tree7dff13ee70c7c51b0bb92abd22742d77c521bea4 /lib
parent014f9fd863d1db1dbe40efa5549c76f5017164d3 (diff)
downloadllvm-41dac4aa87a7eba67c2722f1abf26bb97b3a5f6f.tar.gz
llvm-41dac4aa87a7eba67c2722f1abf26bb97b3a5f6f.tar.bz2
llvm-41dac4aa87a7eba67c2722f1abf26bb97b3a5f6f.tar.xz
[ASan] Behave the same for functions w/o sanitize_address attribute and blacklisted functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209946 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Transforms/Instrumentation/AddressSanitizer.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/lib/Transforms/Instrumentation/AddressSanitizer.cpp b/lib/Transforms/Instrumentation/AddressSanitizer.cpp
index ede32fe57f..9e5fca7d68 100644
--- a/lib/Transforms/Instrumentation/AddressSanitizer.cpp
+++ b/lib/Transforms/Instrumentation/AddressSanitizer.cpp
@@ -1310,7 +1310,6 @@ bool AddressSanitizer::InjectCoverage(Function &F,
}
bool AddressSanitizer::runOnFunction(Function &F) {
- if (BL->isIn(F)) return false;
if (&F == AsanCtorFunction) return false;
if (F.getLinkage() == GlobalValue::AvailableExternallyLinkage) return false;
DEBUG(dbgs() << "ASAN instrumenting:\n" << F << "\n");
@@ -1319,7 +1318,7 @@ bool AddressSanitizer::runOnFunction(Function &F) {
// If needed, insert __asan_init before checking for SanitizeAddress attr.
maybeInsertAsanInitAtFunctionEntry(F);
- if (!F.hasFnAttribute(Attribute::SanitizeAddress))
+ if (!F.hasFnAttribute(Attribute::SanitizeAddress) || BL->isIn(F))
return false;
if (!ClDebugFunc.empty() && ClDebugFunc != F.getName())