[clang] 4d41344 - [clang][ssaf] Fix plugin crash on AIX by adding `SUPPORT_PLUGINS` to `clang-ssaf-format` (#192292)

via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 15 11:16:55 PDT 2026


Author: Aviral Goel
Date: 2026-04-15T11:16:50-07:00
New Revision: 4d41344c7995f213e176136cc27afc794a68b0f2

URL: https://github.com/llvm/llvm-project/commit/4d41344c7995f213e176136cc27afc794a68b0f2
DIFF: https://github.com/llvm/llvm-project/commit/4d41344c7995f213e176136cc27afc794a68b0f2.diff

LOG: [clang][ssaf] Fix plugin crash on AIX by adding `SUPPORT_PLUGINS` to `clang-ssaf-format` (#192292)

This change fixes a crash when running the `with-plugin.test` lit tests
on AIX. The crash is caused by a missing `-Wl, -brtl` linker flag.
Without this flag, the dynamic linker cannot resolve symbols from the
host executable when loading shared libraries via `dlopen`. So when the
plugin's static initializer runs and tries to register into the
`llvm::Registry` (calling `getRegistryLinkListInstance` defined in the
host via `LLVM_INSTANTIATE_REGISTRY`), the symbol resolves to `null`,
crashing the process.

The fix is to use `SUPPORT_PLUGINS` flag in `add_llvm_executable`, like
other tools in llvm. For AIX, this flag adds `-Wl, -brtl` to enable
runtime linking; for Non-AIX platforms, it sets `LLVM_NO_DEAD_STRIP` to
prevent the linker from stripping symbols that plugins reference at load
time.

Added: 
    

Modified: 
    clang/tools/clang-ssaf-format/CMakeLists.txt

Removed: 
    


################################################################################
diff  --git a/clang/tools/clang-ssaf-format/CMakeLists.txt b/clang/tools/clang-ssaf-format/CMakeLists.txt
index 5551dce34fc85..33ce432be3f4a 100644
--- a/clang/tools/clang-ssaf-format/CMakeLists.txt
+++ b/clang/tools/clang-ssaf-format/CMakeLists.txt
@@ -3,8 +3,13 @@ set(LLVM_LINK_COMPONENTS
   Support
   )
 
+if(CLANG_PLUGIN_SUPPORT)
+  set(support_plugins SUPPORT_PLUGINS)
+endif()
+
 add_clang_tool(clang-ssaf-format
   SSAFFormat.cpp
+  ${support_plugins}
   )
 
 clang_target_link_libraries(clang-ssaf-format


        


More information about the cfe-commits mailing list