[clang] [clang] Implement address sanitizer on AIX (PR #129925)

Hubert Tong via cfe-commits cfe-commits at lists.llvm.org
Fri Jun 13 09:56:16 PDT 2025


================
@@ -1635,8 +1656,13 @@ bool tools::addSanitizerRuntimes(const ToolChain &TC, const ArgList &Args,
   }
   // If there is a static runtime with no dynamic list, force all the symbols
   // to be dynamic to be sure we export sanitizer interface functions.
-  if (AddExportDynamic)
-    CmdArgs.push_back("--export-dynamic");
+  if (AddExportDynamic) {
+    if (!TC.getTriple().isOSAIX())
+      CmdArgs.push_back("--export-dynamic");
+    else
+      llvm::report_fatal_error("Sanitizer interface functions must be exported "
----------------
hubert-reinterpretcast wrote:

This error text is entirely confusing anyway. What is a user to do about it?
IIUC, this error arises when the dynamic lists are not found (e.g., because of installation/configuration errors).
If that is the case, then a better error message would be:
> Cannot link "<sanitizer>": Export file missing from resource directories."

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


More information about the cfe-commits mailing list