aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
diff options
context:
space:
mode:
authorzond <zondolfin@gmail.com>2025-10-21 14:20:26 +0200
committerGitHub <noreply@github.com>2025-10-21 13:20:26 +0100
commitfbcd82aab5ff4b762bd476618857a26e576c76f0 (patch)
treefdac4685b431ddb3d936fece9ebd57a505f3365d /llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
parent186182bb64f0595033b4338f019e773c477e420d (diff)
downloadllvm-fbcd82aab5ff4b762bd476618857a26e576c76f0.zip
llvm-fbcd82aab5ff4b762bd476618857a26e576c76f0.tar.gz
llvm-fbcd82aab5ff4b762bd476618857a26e576c76f0.tar.bz2
[Windows] Fix Registry static data members not exported by extract_symbols.py in static builds with plugin support (#163391)
When building LLVM statically (without BUILD_SHARED_LIBS) on Windows with LLVM_EXPORT_SYMBOLS_FOR_PLUGINS=ON, external plugins cannot register through llvm::Registry<clang::PluginASTAction> because: Static data members (Head, Tail) are filtered out during symbol export by extract_symbols.py because they don't match the function signature patterns that the script looks for. This patch fixes the issue by adding pattern matching to extract_symbols.py to recognize and export Registry static data members. Note: When LLVM is built with /Zc:dllexportInlines-, inlined functions aren't exported as symbols, and the plugin must also compile with /Zc:dllexportInlines- to inline them instead of referencing non-exported symbols. Fixes #163367
Diffstat (limited to 'llvm/lib/Transforms/Utils/BasicBlockUtils.cpp')
0 files changed, 0 insertions, 0 deletions