[libFuzzer] fix the stack-depth initialization, add a lit test for DeepRecursionTest.cpp
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk/lib/fuzzer@311421 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/FuzzerTracePC.cpp b/FuzzerTracePC.cpp
index ebd33d3..985649a 100644
--- a/FuzzerTracePC.cpp
+++ b/FuzzerTracePC.cpp
@@ -343,8 +343,10 @@
}
}
+ATTRIBUTE_NO_SANITIZE_ALL
void TracePC::RecordInitialStack() {
- InitialStack = __sancov_lowest_stack;
+ int stack;
+ __sancov_lowest_stack = InitialStack = reinterpret_cast<uintptr_t>(&stack);
}
uintptr_t TracePC::GetMaxStackOffset() const {