[compiler-rt] 19357b4 - [NFCI][sanitizer] Return false on failure from Symbolizer

Vitaly Buka via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 26 22:27:15 PDT 2023


Author: Vitaly Buka
Date: 2023-09-26T22:27:05-07:00
New Revision: 19357b45df7db752d3d8d2d1f9dc6c868b34f0fb

URL: https://github.com/llvm/llvm-project/commit/19357b45df7db752d3d8d2d1f9dc6c868b34f0fb
DIFF: https://github.com/llvm/llvm-project/commit/19357b45df7db752d3d8d2d1f9dc6c868b34f0fb.diff

LOG: [NFCI][sanitizer] Return false on failure from Symbolizer

Looke like a typo intoduced 7a36e6126b6c0.

Added: 
    

Modified: 
    compiler-rt/lib/asan/asan_globals.cpp
    compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cpp

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/asan/asan_globals.cpp b/compiler-rt/lib/asan/asan_globals.cpp
index 5b9a335029edc11..14c36bdc8e64296 100644
--- a/compiler-rt/lib/asan/asan_globals.cpp
+++ b/compiler-rt/lib/asan/asan_globals.cpp
@@ -87,11 +87,9 @@ static void ReportGlobal(const Global &g, const char *prefix) {
       g.module_name, g.has_dynamic_init, (void *)g.odr_indicator);
 
   DataInfo info;
-  Symbolizer::GetOrInit()->SymbolizeData(g.beg, &info);
-  if (info.line != 0) {
+  if (Symbolizer::GetOrInit()->SymbolizeData(g.beg, &info) && info.line != 0) {
     Report("  location: name=%s, %d\n", info.file, static_cast<int>(info.line));
-  }
-  else if (g.gcc_location != 0) {
+  } else if (g.gcc_location != 0) {
     // Fallback to Global::gcc_location
     Report("  location: name=%s, %d\n", g.gcc_location->filename, g.gcc_location->line_no);
   }
@@ -301,9 +299,7 @@ void PrintGlobalNameIfASCII(InternalScopedString *str, const __asan_global &g) {
 
 void PrintGlobalLocation(InternalScopedString *str, const __asan_global &g) {
   DataInfo info;
-  Symbolizer::GetOrInit()->SymbolizeData(g.beg, &info);
-
-  if (info.line != 0) {
+  if (Symbolizer::GetOrInit()->SymbolizeData(g.beg, &info) && info.line != 0) {
     str->AppendF("%s:%d", info.file, static_cast<int>(info.line));
   } else if (g.gcc_location != 0) {
     // Fallback to Global::gcc_location

diff  --git a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cpp b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cpp
index 0d5af6ccdd2d858..81141023386ea01 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cpp
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cpp
@@ -117,7 +117,7 @@ bool Symbolizer::SymbolizeData(uptr addr, DataInfo *info) {
       return true;
     }
   }
-  return true;
+  return false;
 }
 
 bool Symbolizer::SymbolizeFrame(uptr addr, FrameInfo *info) {
@@ -133,7 +133,7 @@ bool Symbolizer::SymbolizeFrame(uptr addr, FrameInfo *info) {
       return true;
     }
   }
-  return true;
+  return false;
 }
 
 bool Symbolizer::GetModuleNameAndOffsetForPC(uptr pc, const char **module_name,


        


More information about the llvm-commits mailing list