llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang Author: Aviral Goel (aviralg) <details> <summary>Changes</summary> 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. --- Full diff: https://github.com/llvm/llvm-project/pull/192292.diff 1 Files Affected: - (modified) clang/tools/clang-ssaf-format/CMakeLists.txt (+5) ``````````diff 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 `````````` </details> https://github.com/llvm/llvm-project/pull/192292 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
