[compiler-rt] r193587 - [Sanitizer] Simplify StackTrace::PrintStack interface: prefer common flags to turn on/off the symbolization

Alexey Samsonov samsonov at google.com
Mon Oct 28 22:31:25 PDT 2013


Author: samsonov
Date: Tue Oct 29 00:31:25 2013
New Revision: 193587

URL: http://llvm.org/viewvc/llvm-project?rev=193587&view=rev
Log:
[Sanitizer] Simplify StackTrace::PrintStack interface: prefer common flags to turn on/off the symbolization

Modified:
    compiler-rt/trunk/lib/asan/asan_stack.cc
    compiler-rt/trunk/lib/lsan/lsan_common.cc
    compiler-rt/trunk/lib/msan/msan.cc
    compiler-rt/trunk/lib/msan/msan_report.cc
    compiler-rt/trunk/lib/sanitizer_common/sanitizer_stacktrace.cc
    compiler-rt/trunk/lib/sanitizer_common/sanitizer_stacktrace.h

Modified: compiler-rt/trunk/lib/asan/asan_stack.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/asan/asan_stack.cc?rev=193587&r1=193586&r2=193587&view=diff
==============================================================================
--- compiler-rt/trunk/lib/asan/asan_stack.cc (original)
+++ compiler-rt/trunk/lib/asan/asan_stack.cc Tue Oct 29 00:31:25 2013
@@ -29,9 +29,8 @@ void PrintStack(const uptr *trace, uptr
     Printf("<empty stack>\n\n");
     return;
   }
-  StackTrace::PrintStack(trace, size, common_flags()->symbolize,
-                         MaybeCallAsanSymbolize);
-    Printf("\n");
+  StackTrace::PrintStack(trace, size, MaybeCallAsanSymbolize);
+  Printf("\n");
 }
 
 void PrintStack(StackTrace *stack) {

Modified: compiler-rt/trunk/lib/lsan/lsan_common.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/lsan/lsan_common.cc?rev=193587&r1=193586&r2=193587&view=diff
==============================================================================
--- compiler-rt/trunk/lib/lsan/lsan_common.cc (original)
+++ compiler-rt/trunk/lib/lsan/lsan_common.cc Tue Oct 29 00:31:25 2013
@@ -295,7 +295,7 @@ static void PrintStackTraceById(u32 stac
   CHECK(stack_trace_id);
   uptr size = 0;
   const uptr *trace = StackDepotGet(stack_trace_id, &size);
-  StackTrace::PrintStack(trace, size, common_flags()->symbolize, 0);
+  StackTrace::PrintStack(trace, size);
 }
 
 // ForEachChunk callback. Aggregates unreachable chunks into a LeakReport.

Modified: compiler-rt/trunk/lib/msan/msan.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/msan/msan.cc?rev=193587&r1=193586&r2=193587&view=diff
==============================================================================
--- compiler-rt/trunk/lib/msan/msan.cc (original)
+++ compiler-rt/trunk/lib/msan/msan.cc Tue Oct 29 00:31:25 2013
@@ -142,6 +142,7 @@ static void ParseFlagsFromString(Flags *
 static void InitializeFlags(Flags *f, const char *options) {
   CommonFlags *cf = common_flags();
   cf->external_symbolizer_path = GetEnv("MSAN_SYMBOLIZER_PATH");
+  cf->symbolize = true;
   cf->strip_path_prefix = "";
   cf->fast_unwind_on_fatal = false;
   cf->fast_unwind_on_malloc = true;

Modified: compiler-rt/trunk/lib/msan/msan_report.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/msan/msan_report.cc?rev=193587&r1=193586&r2=193587&view=diff
==============================================================================
--- compiler-rt/trunk/lib/msan/msan_report.cc (original)
+++ compiler-rt/trunk/lib/msan/msan_report.cc Tue Oct 29 00:31:25 2013
@@ -36,7 +36,7 @@ class Decorator: private __sanitizer::An
 
 static void PrintStack(const uptr *trace, uptr size) {
   SymbolizerScope sym_scope;
-  StackTrace::PrintStack(trace, size, true, 0);
+  StackTrace::PrintStack(trace, size);
   Printf("\n");
 }
 

Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_stacktrace.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_stacktrace.cc?rev=193587&r1=193586&r2=193587&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_stacktrace.cc (original)
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_stacktrace.cc Tue Oct 29 00:31:25 2013
@@ -38,7 +38,7 @@ static void PrintStackFramePrefix(uptr f
   Printf("    #%zu 0x%zx", frame_num, pc);
 }
 
-void StackTrace::PrintStack(const uptr *addr, uptr size, bool symbolize,
+void StackTrace::PrintStack(const uptr *addr, uptr size,
                             SymbolizeCallback symbolize_callback) {
   MemoryMappingLayout proc_maps(/*cache_enabled*/true);
   InternalScopedBuffer<char> buff(GetPageSizeCached() * 2);
@@ -62,7 +62,7 @@ void StackTrace::PrintStack(const uptr *
         frame_num++;
       }
     }
-    if (symbolize && addr_frames_num == 0) {
+    if (common_flags()->symbolize && addr_frames_num == 0) {
       // Use our own (online) symbolizer, if necessary.
       if (Symbolizer *sym = Symbolizer::GetOrNull())
         addr_frames_num =

Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_stacktrace.h
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_stacktrace.h?rev=193587&r1=193586&r2=193587&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_stacktrace.h (original)
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_stacktrace.h Tue Oct 29 00:31:25 2013
@@ -34,8 +34,8 @@ struct StackTrace {
   uptr size;
   uptr trace[kStackTraceMax];
 
-  static void PrintStack(const uptr *addr, uptr size, bool symbolize,
-                         SymbolizeCallback symbolize_callback);
+  static void PrintStack(const uptr *addr, uptr size,
+                         SymbolizeCallback symbolize_callback = 0);
 
   void CopyFrom(const uptr *src, uptr src_size) {
     size = src_size;





More information about the llvm-commits mailing list