[compiler-rt] [asan] Implement address sanitizer on AIX: address descriptions (PR #138891)

Jake Egan via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 19 07:47:03 PDT 2025


================
@@ -444,6 +444,15 @@ AddressDescription::AddressDescription(uptr addr, uptr access_size,
     data.kind = kAddressKindShadow;
     return;
   }
+
+  // Check global first. On AIX, some global data defined in shared libraries
+  // are put to the STACK region for unknown reasons. Check global first can
+  // workaround this issue.
+  if (GetGlobalAddressInformation(addr, access_size, &data.global)) {
+    data.kind = kAddressKindGlobal;
+    return;
+  }
+
----------------
jakeegan wrote:

Just this test fails at this check line: https://github.com/llvm/llvm-project/blob/802fa92aee3565768887615108aa3e924d4e0fc7/compiler-rt/test/asan/TestCases/Posix/global-registration.c#L53

It's checking an out of bounds access of a global buffer declared in an object file loaded at runtime is caught. I'll add a TODO comment 

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


More information about the llvm-commits mailing list