[compiler-rt] r193522 - [Sanitizer] Revert r193501 and properly fix r193448

Alexey Samsonov samsonov at google.com
Mon Oct 28 09:31:40 PDT 2013


Author: samsonov
Date: Mon Oct 28 11:31:39 2013
New Revision: 193522

URL: http://llvm.org/viewvc/llvm-project?rev=193522&view=rev
Log:
[Sanitizer] Revert r193501 and properly fix r193448

Modified:
    compiler-rt/trunk/lib/asan/asan_report.cc
    compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer.cc
    compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cc

Modified: compiler-rt/trunk/lib/asan/asan_report.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/asan/asan_report.cc?rev=193522&r1=193521&r2=193522&view=diff
==============================================================================
--- compiler-rt/trunk/lib/asan/asan_report.cc (original)
+++ compiler-rt/trunk/lib/asan/asan_report.cc Mon Oct 28 11:31:39 2013
@@ -551,9 +551,7 @@ class ScopedInErrorReport {
 
 static void ReportSummary(const char *error_type, StackTrace *stack) {
   AddressInfo ai;
-  // FIXME: The symbolizer interface should be changed in order to support
-  // Windows where we don't have a symbolizer.
-  if (!SANITIZER_WINDOWS && Symbolizer::Get()->IsAvailable()) {
+  if (Symbolizer::Get()->IsAvailable()) {
     // Currently, we include the first stack frame into the report summary.
     // Maybe sometimes we need to choose another frame (e.g. skip memcpy/etc).
     uptr pc = StackTrace::GetPreviousInstructionPc(stack->trace[0]);

Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer.cc?rev=193522&r1=193521&r2=193522&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer.cc (original)
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer.cc Mon Oct 28 11:31:39 2013
@@ -35,7 +35,7 @@ Symbolizer *Symbolizer::Get() {
 Symbolizer *Symbolizer::Disable() {
   CHECK_EQ(0, atomic_load(&symbolizer_, memory_order_acquire));
   Symbolizer *dummy_sym = new(symbolizer_allocator_) Symbolizer;
-  atomic_store(&symbolizer_, reinterpret_cast<uptr>(&dummy_sym),
+  atomic_store(&symbolizer_, reinterpret_cast<uptr>(dummy_sym),
                memory_order_release);
   return dummy_sym;
 }

Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cc?rev=193522&r1=193521&r2=193522&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cc (original)
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cc Mon Oct 28 11:31:39 2013
@@ -20,7 +20,8 @@ namespace __sanitizer {
 
 Symbolizer *Symbolizer::CreateAndStore(const char *path_to_external) {
   Symbolizer *platform_symbolizer = PlatformInit(path_to_external);
-  if (!platform_symbolizer) return Disable();
+  if (!platform_symbolizer)
+    return Disable();
   atomic_store(&symbolizer_, reinterpret_cast<uptr>(platform_symbolizer),
                memory_order_release);
   return platform_symbolizer;





More information about the llvm-commits mailing list