[compiler-rt] 47a9528 - [NFC][msan] Rename SymbolizerScope to UnwinderScope and hide
Vitaly Buka via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 12 19:00:47 PDT 2022
Author: Vitaly Buka
Date: 2022-04-12T18:57:54-07:00
New Revision: 47a9528fb46a8b991d1f429e8d6b8b2390168e27
URL: https://github.com/llvm/llvm-project/commit/47a9528fb46a8b991d1f429e8d6b8b2390168e27
DIFF: https://github.com/llvm/llvm-project/commit/47a9528fb46a8b991d1f429e8d6b8b2390168e27.diff
LOG: [NFC][msan] Rename SymbolizerScope to UnwinderScope and hide
Added:
Modified:
compiler-rt/lib/msan/msan.cpp
compiler-rt/lib/msan/msan.h
compiler-rt/lib/msan/msan_interceptors.cpp
Removed:
################################################################################
diff --git a/compiler-rt/lib/msan/msan.cpp b/compiler-rt/lib/msan/msan.cpp
index 77ae20368c842..2c0f849b999a3 100644
--- a/compiler-rt/lib/msan/msan.cpp
+++ b/compiler-rt/lib/msan/msan.cpp
@@ -69,8 +69,6 @@ THREADLOCAL u64 __msan_va_arg_overflow_size_tls;
SANITIZER_INTERFACE_ATTRIBUTE
THREADLOCAL u32 __msan_origin_tls;
-static THREADLOCAL int is_in_symbolizer;
-
extern "C" SANITIZER_WEAK_ATTRIBUTE const int __msan_track_origins;
int __msan_get_track_origins() {
@@ -81,15 +79,19 @@ extern "C" SANITIZER_WEAK_ATTRIBUTE const int __msan_keep_going;
namespace __msan {
-void EnterSymbolizer() { ++is_in_symbolizer; }
-void ExitSymbolizer() { --is_in_symbolizer; }
-bool IsInSymbolizer() { return is_in_symbolizer; }
+static THREADLOCAL int is_in_symbolizer_or_unwinder;
+static void EnterSymbolizerOrUnwider() { ++is_in_symbolizer_or_unwinder; }
+static void ExitSymbolizerOrUnwider() { --is_in_symbolizer_or_unwinder; }
+bool IsInSymbolizerOrUnwider() { return is_in_symbolizer_or_unwinder; }
+
+struct UnwinderScope {
+ UnwinderScope() { EnterSymbolizerOrUnwider(); }
+ ~UnwinderScope() { ExitSymbolizerOrUnwider(); }
+};
static Flags msan_flags;
-Flags *flags() {
- return &msan_flags;
-}
+Flags *flags() { return &msan_flags; }
int msan_inited = 0;
bool msan_init_is_running;
@@ -301,7 +303,7 @@ u32 ChainOrigin(u32 id, StackTrace *stack) {
return chained.raw_id();
}
-} // namespace __msan
+} // namespace __msan
void __sanitizer::BufferedStackTrace::UnwindImpl(
uptr pc, uptr bp, void *context, bool request_fast, u32 max_depth) {
@@ -309,7 +311,7 @@ void __sanitizer::BufferedStackTrace::UnwindImpl(
MsanThread *t = GetCurrentThread();
if (!t || !StackTrace::WillUseFastUnwind(request_fast)) {
// Block reports from our interceptors during _Unwind_Backtrace.
- SymbolizerScope sym_scope;
+ UnwinderScope sym_scope;
return Unwind(max_depth, pc, bp, context, t ? t->stack_top() : 0,
t ? t->stack_bottom() : 0, false);
}
@@ -462,7 +464,8 @@ void __msan_init() {
Die();
}
- Symbolizer::GetOrInit()->AddHooks(EnterSymbolizer, ExitSymbolizer);
+ Symbolizer::GetOrInit()->AddHooks(EnterSymbolizerOrUnwider,
+ ExitSymbolizerOrUnwider);
InitializeCoverage(common_flags()->coverage, common_flags()->coverage_dir);
diff --git a/compiler-rt/lib/msan/msan.h b/compiler-rt/lib/msan/msan.h
index 4b2cec31756a6..b018b1337b3f3 100644
--- a/compiler-rt/lib/msan/msan.h
+++ b/compiler-rt/lib/msan/msan.h
@@ -314,14 +314,7 @@ void InstallAtExitHandler();
const char *GetStackOriginDescr(u32 id, uptr *pc);
-void EnterSymbolizer();
-void ExitSymbolizer();
-bool IsInSymbolizer();
-
-struct SymbolizerScope {
- SymbolizerScope() { EnterSymbolizer(); }
- ~SymbolizerScope() { ExitSymbolizer(); }
-};
+bool IsInSymbolizerOrUnwider();
void PrintWarning(uptr pc, uptr bp);
void PrintWarningWithOrigin(uptr pc, uptr bp, u32 origin);
diff --git a/compiler-rt/lib/msan/msan_interceptors.cpp b/compiler-rt/lib/msan/msan_interceptors.cpp
index d745fa7563d90..c4a9e88655fe0 100644
--- a/compiler-rt/lib/msan/msan_interceptors.cpp
+++ b/compiler-rt/lib/msan/msan_interceptors.cpp
@@ -90,7 +90,8 @@ struct DlsymAlloc : public DlSymAllocator<DlsymAlloc> {
#define CHECK_UNPOISONED_0(x, n) \
do { \
sptr __offset = __msan_test_shadow(x, n); \
- if (__msan::IsInSymbolizer()) break; \
+ if (__msan::IsInSymbolizerOrUnwider()) \
+ break; \
if (__offset >= 0 && __msan::flags()->report_umrs) { \
GET_CALLER_PC_BP_SP; \
(void)sp; \
@@ -1599,7 +1600,7 @@ void __msan_clear_and_unpoison(void *a, uptr size) {
void *__msan_memcpy(void *dest, const void *src, SIZE_T n) {
if (!msan_inited) return internal_memcpy(dest, src, n);
- if (msan_init_is_running || __msan::IsInSymbolizer())
+ if (msan_init_is_running || __msan::IsInSymbolizerOrUnwider())
return REAL(memcpy)(dest, src, n);
ENSURE_MSAN_INITED();
GET_STORE_STACK_TRACE;
More information about the llvm-commits
mailing list