[compiler-rt] Changing function prototype returning unused value

Summary: The return value of `maybeInsertAsanInitAtFunctionEntry` is ignored.

Reviewers: rnk

Subscribers: llvm-commits, chrisha, dberris

Differential Revision: https://reviews.llvm.org/D24568

llvm-svn: 281620
This commit is contained in:
Etienne Bergeron 2016-09-15 15:45:05 +00:00
parent 389c7f9142
commit 78582b2ada
1 changed files with 10 additions and 5 deletions

View File

@ -1885,13 +1885,16 @@ bool AddressSanitizer::runOnFunction(Function &F) {
if (!ClDebugFunc.empty() && ClDebugFunc == F.getName()) return false;
if (F.getName().startswith("__asan_")) return false;
bool FunctionModified = false;
// If needed, insert __asan_init before checking for SanitizeAddress attr.
// This function needs to be called even if the function body is not
// instrumented.
maybeInsertAsanInitAtFunctionEntry(F);
if (maybeInsertAsanInitAtFunctionEntry(F))
FunctionModified = true;
// Leave if the function doesn't need instrumentation.
if (!F.hasFnAttribute(Attribute::SanitizeAddress)) return false;
if (!F.hasFnAttribute(Attribute::SanitizeAddress)) return FunctionModified;
DEBUG(dbgs() << "ASAN instrumenting:\n" << F << "\n");
@ -1992,11 +1995,13 @@ bool AddressSanitizer::runOnFunction(Function &F) {
NumInstrumented++;
}
bool res = NumInstrumented > 0 || ChangedStack || !NoReturnCalls.empty();
if (NumInstrumented > 0 || ChangedStack || !NoReturnCalls.empty())
FunctionModified = true;
DEBUG(dbgs() << "ASAN done instrumenting: " << res << " " << F << "\n");
DEBUG(dbgs() << "ASAN done instrumenting: " << FunctionModified << " "
<< F << "\n");
return res;
return FunctionModified;
}
// Workaround for bug 11395: we don't want to instrument stack in functions