From ea4269e7a86812fc6923e31cd1b675ab86cedfe4 Mon Sep 17 00:00:00 2001 From: Alexey Samsonov Date: Sat, 31 May 2014 00:33:05 +0000 Subject: [PATCH] [ASan] Behave the same for functions w/o sanitize_address attribute and blacklisted functions llvm-svn: 209946 --- llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp index ede32fe..9e5fca7 100644 --- a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp +++ b/llvm/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()) -- 2.7.4