[compiler-rt] [asan] Implement address sanitizer on AIX: memory mapping (6/6) (PR #136874)

via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 23 07:29:36 PDT 2025


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff HEAD~1 HEAD --extensions cpp,h -- compiler-rt/lib/asan/asan_mapping_aix64.h compiler-rt/test/asan/TestCases/AIX/aix64_mapping.cpp compiler-rt/lib/asan/asan_allocator.h compiler-rt/lib/asan/asan_descriptions.cpp compiler-rt/lib/asan/asan_mapping.h compiler-rt/lib/asan/asan_poisoning.h compiler-rt/lib/asan/asan_rtl.cpp compiler-rt/lib/asan/asan_shadow_setup.cpp
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/compiler-rt/lib/asan/asan_allocator.h b/compiler-rt/lib/asan/asan_allocator.h
index 46cd7b118..6fb533423 100644
--- a/compiler-rt/lib/asan/asan_allocator.h
+++ b/compiler-rt/lib/asan/asan_allocator.h
@@ -197,11 +197,11 @@ const uptr kAllocatorSpace = ~(uptr)0;
 #    endif  // SANITIZER_APPLE
 
 #    if defined(__powerpc64__)
-#if SANITIZER_AIX
-const uptr kAllocatorSize  =  1ULL << 38;  // 256G.
-#else
+#      if SANITIZER_AIX
+const uptr kAllocatorSize = 1ULL << 38;  // 256G.
+#      else
 const uptr kAllocatorSize  =  0x20000000000ULL;  // 2T.
-#endif
+#      endif
 typedef DefaultSizeClassMap SizeClassMap;
 #    elif defined(__aarch64__) && SANITIZER_ANDROID
 // Android needs to support 39, 42 and 48 bit VMA.
diff --git a/compiler-rt/lib/asan/asan_rtl.cpp b/compiler-rt/lib/asan/asan_rtl.cpp
index c857a5a0b..bcef3269f 100644
--- a/compiler-rt/lib/asan/asan_rtl.cpp
+++ b/compiler-rt/lib/asan/asan_rtl.cpp
@@ -70,7 +70,6 @@ static void AsanDie() {
     } else {
       if (kHighShadowEnd)
         UnmapOrDie((void *)kLowShadowBeg, kHighShadowEnd - kLowShadowBeg);
-
     }
 #endif
   }
@@ -96,11 +95,11 @@ bool AsanInited() {
 bool replace_intrin_cached;
 
 #if !ASAN_FIXED_MAPPING
-#if !(SANITIZER_AIX && __powerpc64__)
+#  if !(SANITIZER_AIX && __powerpc64__)
 uptr kHighMemEnd, kMidMemBeg, kMidMemEnd;
-#else
+#  else
 uptr kHighMemEnd;
-#endif
+#  endif
 #endif
 
 // -------------------------- Misc ---------------- {{{1
@@ -356,7 +355,7 @@ void PrintAddressSpaceLayout() {
            (void*)kHighShadowBeg, (void*)kHighShadowEnd);
   }
   if (kMidMemBeg) {
- // AIX shadowgap is always set to 0 for 64-bit.
+    // AIX shadowgap is always set to 0 for 64-bit.
 #if !SANITIZER_AIX || SANITIZER_WORDSIZE != 64
     Printf("|| `[%p, %p]` || ShadowGap3 ||\n",
            (void*)kShadowGap3Beg, (void*)kShadowGap3End);
@@ -371,10 +370,10 @@ void PrintAddressSpaceLayout() {
            (void*)kMidShadowBeg, (void*)kMidShadowEnd);
   }
 #if SANITIZER_AIX == 1 && SANITIZER_WORDSIZE == 64
-  Printf("|| `[%p, %p]` || Mid2Shadow  ||\n",
-         (void*)kMid2ShadowBeg, (void*)kMid2ShadowEnd);
-  Printf("|| `[%p, %p]` || Mid3Shadow  ||\n",
-         (void*)kMid3ShadowBeg, (void*)kMid3ShadowEnd);
+  Printf("|| `[%p, %p]` || Mid2Shadow  ||\n", (void *)kMid2ShadowBeg,
+         (void *)kMid2ShadowEnd);
+  Printf("|| `[%p, %p]` || Mid3Shadow  ||\n", (void *)kMid3ShadowBeg,
+         (void *)kMid3ShadowEnd);
 #else
   Printf("|| `[%p, %p]` || ShadowGap  ||\n",
          (void*)kShadowGapBeg, (void*)kShadowGapEnd);
@@ -400,12 +399,10 @@ void PrintAddressSpaceLayout() {
   }
 // On AIX, for 64-bit, there are totally 3 mid memory regions.
 #if SANITIZER_AIX == 1 && SANITIZER_WORDSIZE == 64
-    Printf(" %p %p",
-           (void*)MEM_TO_SHADOW(kMid2ShadowBeg),
-           (void*)MEM_TO_SHADOW(kMid2ShadowEnd));
-    Printf(" %p %p",
-           (void*)MEM_TO_SHADOW(kMid3ShadowBeg),
-           (void*)MEM_TO_SHADOW(kMid3ShadowEnd));
+  Printf(" %p %p", (void *)MEM_TO_SHADOW(kMid2ShadowBeg),
+         (void *)MEM_TO_SHADOW(kMid2ShadowEnd));
+  Printf(" %p %p", (void *)MEM_TO_SHADOW(kMid3ShadowBeg),
+         (void *)MEM_TO_SHADOW(kMid3ShadowEnd));
 #endif
   Printf("\n");
   Printf("redzone=%zu\n", (uptr)flags()->redzone);
diff --git a/compiler-rt/test/asan/TestCases/AIX/aix64_mapping.cpp b/compiler-rt/test/asan/TestCases/AIX/aix64_mapping.cpp
index ee37fa737..932c47c30 100644
--- a/compiler-rt/test/asan/TestCases/AIX/aix64_mapping.cpp
+++ b/compiler-rt/test/asan/TestCases/AIX/aix64_mapping.cpp
@@ -5,15 +5,14 @@
 #include <stdio.h>
 
 int main() {
-// CHECK: || `[0xfffff8000000000, 0xfffffffffffffff]` || HighMem    ||
-// CHECK: || `[0xa80fff000000000, 0xa80ffffffffffff]` || HighShadow ||
-// CHECK: || `[0xa00000000000000, 0xa0001ffffffffff]` || MidMem     ||
-// CHECK: || `[0xa41000000000000, 0xa41003fffffffff]` || MidShadow  ||
-// CHECK: || `[0xa21020000000000, 0xa21020fffffffff]` || Mid2Shadow  ||
-// CHECK: || `[0xa01020000000000, 0xa01020fffffffff]` || Mid3Shadow  ||
-// CHECK: || `[0xa01000000000000, 0xa01000fffffffff]` || LowShadow  ||
-// CHECK: || `[0x000000000000, 0x007fffffffff]` || LowMem     ||
+  // CHECK: || `[0xfffff8000000000, 0xfffffffffffffff]` || HighMem    ||
+  // CHECK: || `[0xa80fff000000000, 0xa80ffffffffffff]` || HighShadow ||
+  // CHECK: || `[0xa00000000000000, 0xa0001ffffffffff]` || MidMem     ||
+  // CHECK: || `[0xa41000000000000, 0xa41003fffffffff]` || MidShadow  ||
+  // CHECK: || `[0xa21020000000000, 0xa21020fffffffff]` || Mid2Shadow  ||
+  // CHECK: || `[0xa01020000000000, 0xa01020fffffffff]` || Mid3Shadow  ||
+  // CHECK: || `[0xa01000000000000, 0xa01000fffffffff]` || LowShadow  ||
+  // CHECK: || `[0x000000000000, 0x007fffffffff]` || LowMem     ||
 
   return 0;
 }
-

``````````

</details>


https://github.com/llvm/llvm-project/pull/136874


More information about the llvm-commits mailing list