[compiler-rt] 34840c1 - Revert "[sanitizers] Avoid macro clash in SignalContext::WriteFlag (NFC)"

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 9 01:07:32 PST 2022


Author: Nikita Popov
Date: 2022-02-09T10:07:23+01:00
New Revision: 34840c1a7d68869e84b73ebfb8564034b824c44e

URL: https://github.com/llvm/llvm-project/commit/34840c1a7d68869e84b73ebfb8564034b824c44e
DIFF: https://github.com/llvm/llvm-project/commit/34840c1a7d68869e84b73ebfb8564034b824c44e.diff

LOG: Revert "[sanitizers] Avoid macro clash in SignalContext::WriteFlag (NFC)"

This reverts commit fda29264f360820859587acdfb0ad9392c944bd6.

This breaks the sanitizer build on windows, will reapply with
additional changes.

Added: 
    

Modified: 
    compiler-rt/lib/asan/asan_errors.h
    compiler-rt/lib/sanitizer_common/sanitizer_common.h
    compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cpp

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/asan/asan_errors.h b/compiler-rt/lib/asan/asan_errors.h
index af6d1f295eb29..a7fda2fd9f5d6 100644
--- a/compiler-rt/lib/asan/asan_errors.h
+++ b/compiler-rt/lib/asan/asan_errors.h
@@ -53,9 +53,9 @@ struct ErrorDeadlySignal : ErrorBase {
       scariness.Scare(10, "null-deref");
     } else if (signal.addr == signal.pc) {
       scariness.Scare(60, "wild-jump");
-    } else if (signal.write_flag == SignalContext::Write) {
+    } else if (signal.write_flag == SignalContext::WRITE) {
       scariness.Scare(30, "wild-addr-write");
-    } else if (signal.write_flag == SignalContext::Read) {
+    } else if (signal.write_flag == SignalContext::READ) {
       scariness.Scare(20, "wild-addr-read");
     } else {
       scariness.Scare(25, "wild-addr");

diff  --git a/compiler-rt/lib/sanitizer_common/sanitizer_common.h b/compiler-rt/lib/sanitizer_common/sanitizer_common.h
index 7b591ca528928..db851680d3bb2 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_common.h
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_common.h
@@ -959,7 +959,7 @@ struct SignalContext {
   uptr sp;
   uptr bp;
   bool is_memory_access;
-  enum WriteFlag { Unknown, Read, Write } write_flag;
+  enum WriteFlag { UNKNOWN, READ, WRITE } write_flag;
 
   // In some cases the kernel cannot provide the true faulting address; `addr`
   // will be zero then.  This field allows to distinguish between these cases

diff  --git a/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp b/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
index 15c797464acf4..29ff7c0417291 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
@@ -1825,7 +1825,7 @@ SignalContext::WriteFlag SignalContext::GetWriteFlag() const {
 #else
   uptr err = ucontext->uc_mcontext.gregs[REG_ERR];
 #endif // SANITIZER_FREEBSD
-  return err & PF_WRITE ? Write : Read;
+  return err & PF_WRITE ? WRITE : READ;
 #elif defined(__mips__)
   uint32_t *exception_source;
   uint32_t faulty_instruction;

diff  --git a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cpp b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cpp
index ac855c8be1c86..869c8935330d9 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cpp
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cpp
@@ -211,9 +211,9 @@ static void ReportDeadlySignalImpl(const SignalContext &sig, u32 tid,
     Report("Hint: pc points to the zero page.\n");
   if (sig.is_memory_access) {
     const char *access_type =
-        sig.write_flag == SignalContext::Write
+        sig.write_flag == SignalContext::WRITE
             ? "WRITE"
-            : (sig.write_flag == SignalContext::Read ? "READ" : "UNKNOWN");
+            : (sig.write_flag == SignalContext::READ ? "READ" : "UNKNOWN");
     Report("The signal is caused by a %s memory access.\n", access_type);
     if (!sig.is_true_faulting_addr)
       Report("Hint: this fault was caused by a dereference of a high value "


        


More information about the llvm-commits mailing list