[PATCH] D97975: [libFuzzer] add attribute noinline on Fuzzer::ExecuteCallback()
Jonas Paulsson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 11 19:08:05 PST 2021
This revision was automatically updated to reflect the committed changes.
Closed by commit rG5908c7ca41bd: [libFuzzer] Add attribute noinline on Fuzzer::ExecuteCallback(). (authored by jonpa).
Herald added a project: Sanitizers.
Herald added a subscriber: Sanitizers.
Changed prior to commit:
https://reviews.llvm.org/D97975?vs=328788&id=330127#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D97975/new/
https://reviews.llvm.org/D97975
Files:
compiler-rt/lib/fuzzer/FuzzerLoop.cpp
Index: compiler-rt/lib/fuzzer/FuzzerLoop.cpp
===================================================================
--- compiler-rt/lib/fuzzer/FuzzerLoop.cpp
+++ compiler-rt/lib/fuzzer/FuzzerLoop.cpp
@@ -578,7 +578,10 @@
!memcmp(A + Size - Limit / 2, B + Size - Limit / 2, Limit / 2);
}
-void Fuzzer::ExecuteCallback(const uint8_t *Data, size_t Size) {
+// This method is not inlined because it would cause a test to fail where it
+// is part of the stack unwinding. See D97975 for details.
+void __attribute__((noinline))
+Fuzzer::ExecuteCallback(const uint8_t *Data, size_t Size) {
TPC.RecordInitialStack();
TotalNumberOfRuns++;
assert(InFuzzingThread());
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D97975.330127.patch
Type: text/x-patch
Size: 677 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210312/03946fdc/attachment.bin>
More information about the llvm-commits
mailing list