diff options
author | Etienne Bergeron <etienneb@google.com> | 2016-09-15 15:45:05 +0000 |
---|---|---|
committer | Etienne Bergeron <etienneb@google.com> | 2016-09-15 15:45:05 +0000 |
commit | 78582b2adae13261f03555ad54c90d023456b50f (patch) | |
tree | dc0dc17e44dc3bf2c51143ccc74f386cdcc58d56 /llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp | |
parent | 389c7f91425bb0991663b879a79a7825d57061bb (diff) | |
download | bcm5719-llvm-78582b2adae13261f03555ad54c90d023456b50f.tar.gz bcm5719-llvm-78582b2adae13261f03555ad54c90d023456b50f.zip |
[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
Diffstat (limited to 'llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp')
-rw-r--r-- | llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp index 62acd117af7..e86fa8beeb9 100644 --- a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp +++ b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp @@ -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 |