[llvm] [CodeGen] Expose the extensibility of PassConfig to plugins (PR #139059)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 10 05:19:43 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `clang-ppc64le-linux-multistage` running on `ppc64le-clang-multistage-test` while building `llvm` at step 5 "ninja check 1".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/76/builds/11163

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 5 (ninja check 1) failure: stage 1 checked (failure)
...
[77/85] Generating POWERPC64LELinuxConfig/Asan-powerpc64le-calls-Noinst-Test
[78/85] Generating ASAN_NOINST_TEST_OBJECTS.gtest-all.cc.powerpc64le-inline.o
[79/85] Generating POWERPC64LELinuxConfig/Asan-powerpc64le-inline-Noinst-Test
[80/85] Generating ASAN_INST_TEST_OBJECTS.gtest-all.cc.powerpc64le-calls.o
[81/85] Generating POWERPC64LELinuxDynamicConfig/Asan-powerpc64le-calls-Dynamic-Test
[82/85] Generating POWERPC64LELinuxConfig/Asan-powerpc64le-calls-Test
[83/85] Generating ASAN_INST_TEST_OBJECTS.gtest-all.cc.powerpc64le-inline.o
[84/85] Generating POWERPC64LELinuxDynamicConfig/Asan-powerpc64le-inline-Dynamic-Test
[85/85] Generating POWERPC64LELinuxConfig/Asan-powerpc64le-inline-Test
[1218/1225] Linking CXX executable unittests/CodeGen/CGPluginTest/CGPluginTest
FAILED: unittests/CodeGen/CGPluginTest/CGPluginTest 
: && /usr/lib64/ccache/c++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wno-comment -Wno-misleading-indentation -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -Wl,--export-dynamic   -Wl,--gc-sections unittests/CodeGen/CGPluginTest/CMakeFiles/CGPluginTest.dir/PluginTest.cpp.o unittests/CodeGen/CGPluginTest/CMakeFiles/CGPluginTest.dir/Plugin/CodeGenTestPass.cpp.o -o unittests/CodeGen/CGPluginTest/CGPluginTest  -Wl,-rpath,/home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-multistage-test/clang-ppc64le-multistage/stage1/lib  lib/libLLVMAArch64CodeGen.so.21.0git  lib/libLLVMAArch64AsmParser.so.21.0git  lib/libLLVMAArch64Disassembler.so.21.0git  lib/libLLVMAMDGPUCodeGen.so.21.0git  lib/libLLVMAMDGPUAsmParser.so.21.0git  lib/libLLVMAMDGPUDisassembler.so.21.0git  lib/libLLVMARMCodeGen.so.21.0git  lib/libLLVMARMAsmParser.so.21.0git  lib/libLLVMARMDisassembler.so.21.0git  lib/libLLVMAVRCodeGen.so.21.0git  lib/libLLVMAVRAsmParser.so.21.0git  lib/libLLVMAVRDesc.so.21.0git  lib/libLLVMAVRDisassembler.so.21.0git  lib/libLLVMAVRInfo.so.21.0git  lib/libLLVMBPFCodeGen.so.21.0git  lib/libLLVMBPFAsmParser.so.21.0git  lib/libLLVMBPFDesc.so.21.0git  lib/libLLVMBPFDisassembler.so.21.0git  lib/libLLVMBPFInfo.so.21.0git  lib/libLLVMHexagonCodeGen.so.21.0git  lib/libLLVMHexagonAsmParser.so.21.0git  lib/libLLVMHexagonDisassembler.so.21.0git  lib/libLLVMLanaiCodeGen.so.21.0git  lib/libLLVMLanaiAsmParser.so.21.0git  lib/libLLVMLanaiDisassembler.so.21.0git  lib/libLLVMLoongArchCodeGen.so.21.0git  lib/libLLVMLoongArchAsmParser.so.21.0git  lib/libLLVMLoongArchDisassembler.so.21.0git  lib/libLLVMMipsCodeGen.so.21.0git  lib/libLLVMMipsAsmParser.so.21.0git  lib/libLLVMMipsDesc.so.21.0git  lib/libLLVMMipsDisassembler.so.21.0git  lib/libLLVMMipsInfo.so.21.0git  lib/libLLVMMSP430CodeGen.so.21.0git  lib/libLLVMMSP430AsmParser.so.21.0git  lib/libLLVMMSP430Desc.so.21.0git  lib/libLLVMMSP430Disassembler.so.21.0git  lib/libLLVMMSP430Info.so.21.0git  lib/libLLVMNVPTXCodeGen.so.21.0git  lib/libLLVMNVPTXDesc.so.21.0git  lib/libLLVMNVPTXInfo.so.21.0git  lib/libLLVMPowerPCCodeGen.so.21.0git  lib/libLLVMPowerPCAsmParser.so.21.0git  lib/libLLVMPowerPCDesc.so.21.0git  lib/libLLVMPowerPCDisassembler.so.21.0git  lib/libLLVMPowerPCInfo.so.21.0git  lib/libLLVMRISCVCodeGen.so.21.0git  lib/libLLVMRISCVAsmParser.so.21.0git  lib/libLLVMRISCVDisassembler.so.21.0git  lib/libLLVMSparcCodeGen.so.21.0git  lib/libLLVMSparcAsmParser.so.21.0git  lib/libLLVMSparcDesc.so.21.0git  lib/libLLVMSparcDisassembler.so.21.0git  lib/libLLVMSparcInfo.so.21.0git  lib/libLLVMSPIRVCodeGen.so.21.0git  lib/libLLVMSPIRVDesc.so.21.0git  lib/libLLVMSPIRVInfo.so.21.0git  lib/libLLVMSystemZCodeGen.so.21.0git  lib/libLLVMSystemZAsmParser.so.21.0git  lib/libLLVMSystemZDisassembler.so.21.0git  lib/libLLVMVECodeGen.so.21.0git  lib/libLLVMVEAsmParser.so.21.0git  lib/libLLVMVEDesc.so.21.0git  lib/libLLVMVEDisassembler.so.21.0git  lib/libLLVMVEInfo.so.21.0git  lib/libLLVMWebAssemblyCodeGen.so.21.0git  lib/libLLVMWebAssemblyAsmParser.so.21.0git  lib/libLLVMWebAssemblyDisassembler.so.21.0git  lib/libLLVMWebAssemblyUtils.so.21.0git  lib/libLLVMX86CodeGen.so.21.0git  lib/libLLVMX86AsmParser.so.21.0git  lib/libLLVMX86Desc.so.21.0git  lib/libLLVMX86Disassembler.so.21.0git  lib/libLLVMX86Info.so.21.0git  lib/libLLVMXCoreCodeGen.so.21.0git  lib/libLLVMXCoreDesc.so.21.0git  lib/libLLVMXCoreDisassembler.so.21.0git  lib/libLLVMXCoreInfo.so.21.0git  -lpthread  lib/libllvm_gtest_main.so.21.0git  -lpthread  lib/libLLVMTestingSupport.so.21.0git  lib/libLLVMAArch64Desc.so.21.0git  lib/libLLVMAArch64Info.so.21.0git  lib/libLLVMAArch64Utils.so.21.0git  lib/libLLVMAMDGPUDesc.so.21.0git  lib/libLLV
RMUtils.so.21.0git  lib/libLLVMHexagonDesc.so.21.0git  lib/libLLVMHexagonInfo.so.21.0git  lib/libLLVMLanaiDesc.so.21.0git  lib/libLLVMLanaiInfo.so.21.0git  lib/libLLVMLoongArchDesc.so.21.0git  lib/libLLVMLoongArchInfo.so.21.0git  lib/libLLVMRISCVDesc.so.21.0git  lib/libLLVMRISCVInfo.so.21.0git  lib/libLLVMSystemZDesc.so.21.0git  lib/libLLVMSystemZInfo.so.21.0git  lib/libLLVMWebAssemblyDesc.so.21.0git  lib/libLLVMWebAssemblyInfo.so.21.0git  lib/libLLVMCodeGen.so.21.0git  lib/libLLVMTarget.so.21.0git  lib/libLLVMCore.so.21.0git  lib/libllvm_gtest.so.21.0git  lib/libLLVMSupport.so.21.0git  -Wl,-rpath-link,/home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-multistage-test/clang-ppc64le-multistage/stage1/lib && :
/usr/bin/ld: unittests/CodeGen/CGPluginTest/CMakeFiles/CGPluginTest.dir/PluginTest.cpp.o: undefined reference to symbol '_ZN4llvm9MCContextC1ERKNS_6TripleEPKNS_9MCAsmInfoEPKNS_14MCRegisterInfoEPKNS_15MCSubtargetInfoEPKNS_9SourceMgrEPKNS_15MCTargetOptionsEbNS_9StringRefE'
/home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-multistage-test/clang-ppc64le-multistage/stage1/lib/libLLVMMC.so.21.0git: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
[1220/1225] Linking CXX executable tools/clang/unittests/AllClangUnitTests
ninja: build stopped: subcommand failed.
Step 11 (ninja check 2) failure: stage 2 checked (failure)
...
[77/85] Generating ASAN_NOINST_TEST_OBJECTS.gtest-all.cc.powerpc64le-inline.o
[78/85] Generating POWERPC64LELinuxConfig/Asan-powerpc64le-calls-Noinst-Test
[79/85] Generating POWERPC64LELinuxConfig/Asan-powerpc64le-inline-Noinst-Test
[80/85] Generating ASAN_INST_TEST_OBJECTS.gtest-all.cc.powerpc64le-calls.o
[81/85] Generating POWERPC64LELinuxDynamicConfig/Asan-powerpc64le-calls-Dynamic-Test
[82/85] Generating POWERPC64LELinuxConfig/Asan-powerpc64le-calls-Test
[83/85] Generating ASAN_INST_TEST_OBJECTS.gtest-all.cc.powerpc64le-inline.o
[84/85] Generating POWERPC64LELinuxDynamicConfig/Asan-powerpc64le-inline-Dynamic-Test
[85/85] Generating POWERPC64LELinuxConfig/Asan-powerpc64le-inline-Test
[467/1225] Linking CXX executable unittests/CodeGen/CGPluginTest/CGPluginTest
FAILED: unittests/CodeGen/CGPluginTest/CGPluginTest 
: && /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-multistage-test/clang-ppc64le-multistage/stage1.install/bin/clang++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -Wl,--export-dynamic   -Wl,--gc-sections unittests/CodeGen/CGPluginTest/CMakeFiles/CGPluginTest.dir/PluginTest.cpp.o unittests/CodeGen/CGPluginTest/CMakeFiles/CGPluginTest.dir/Plugin/CodeGenTestPass.cpp.o -o unittests/CodeGen/CGPluginTest/CGPluginTest  -Wl,-rpath,/home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-multistage-test/clang-ppc64le-multistage/stage2/lib  lib/libLLVMAArch64CodeGen.so.21.0git  lib/libLLVMAArch64AsmParser.so.21.0git  lib/libLLVMAArch64Disassembler.so.21.0git  lib/libLLVMAMDGPUCodeGen.so.21.0git  lib/libLLVMAMDGPUAsmParser.so.21.0git  lib/libLLVMAMDGPUDisassembler.so.21.0git  lib/libLLVMARMCodeGen.so.21.0git  lib/libLLVMARMAsmParser.so.21.0git  lib/libLLVMARMDisassembler.so.21.0git  lib/libLLVMAVRCodeGen.so.21.0git  lib/libLLVMAVRAsmParser.so.21.0git  lib/libLLVMAVRDesc.so.21.0git  lib/libLLVMAVRDisassembler.so.21.0git  lib/libLLVMAVRInfo.so.21.0git  lib/libLLVMBPFCodeGen.so.21.0git  lib/libLLVMBPFAsmParser.so.21.0git  lib/libLLVMBPFDesc.so.21.0git  lib/libLLVMBPFDisassembler.so.21.0git  lib/libLLVMBPFInfo.so.21.0git  lib/libLLVMHexagonCodeGen.so.21.0git  lib/libLLVMHexagonAsmParser.so.21.0git  lib/libLLVMHexagonDisassembler.so.21.0git  lib/libLLVMLanaiCodeGen.so.21.0git  lib/libLLVMLanaiAsmParser.so.21.0git  lib/libLLVMLanaiDisassembler.so.21.0git  lib/libLLVMLoongArchCodeGen.so.21.0git  lib/libLLVMLoongArchAsmParser.so.21.0git  lib/libLLVMLoongArchDisassembler.so.21.0git  lib/libLLVMMipsCodeGen.so.21.0git  lib/libLLVMMipsAsmParser.so.21.0git  lib/libLLVMMipsDesc.so.21.0git  lib/libLLVMMipsDisassembler.so.21.0git  lib/libLLVMMipsInfo.so.21.0git  lib/libLLVMMSP430CodeGen.so.21.0git  lib/libLLVMMSP430AsmParser.so.21.0git  lib/libLLVMMSP430Desc.so.21.0git  lib/libLLVMMSP430Disassembler.so.21.0git  lib/libLLVMMSP430Info.so.21.0git  lib/libLLVMNVPTXCodeGen.so.21.0git  lib/libLLVMNVPTXDesc.so.21.0git  lib/libLLVMNVPTXInfo.so.21.0git  lib/libLLVMPowerPCCodeGen.so.21.0git  lib/libLLVMPowerPCAsmParser.so.21.0git  lib/libLLVMPowerPCDesc.so.21.0git  lib/libLLVMPowerPCDisassembler.so.21.0git  lib/libLLVMPowerPCInfo.so.21.0git  lib/libLLVMRISCVCodeGen.so.21.0git  lib/libLLVMRISCVAsmParser.so.21.0git  lib/libLLVMRISCVDisassembler.so.21.0git  lib/libLLVMSparcCodeGen.so.21.0git  lib/libLLVMSparcAsmParser.so.21.0git  lib/libLLVMSparcDesc.so.21.0git  lib/libLLVMSparcDisassembler.so.21.0git  lib/libLLVMSparcInfo.so.21.0git  lib/libLLVMSPIRVCodeGen.so.21.0git  lib/libLLVMSPIRVDesc.so.21.0git  lib/libLLVMSPIRVInfo.so.21.0git  lib/libLLVMSystemZCodeGen.so.21.0git  lib/libLLVMSystemZAsmParser.so.21.0git  lib/libLLVMSystemZDisassembler.so.21.0git  lib/libLLVMVECodeGen.so.21.0git  lib/libLLVMVEAsmParser.so.21.0git  lib/libLLVMVEDesc.so.21.0git  lib/libLLVMVEDisassembler.so.21.0git  lib/libLLVMVEInfo.so.21.0git  lib/libLLVMWebAssemblyCodeGen.so.21.0git  lib/libLLVMWebAssemblyAsmParser.so.21.0git  lib/libLLVMWebAssemblyDisassembler.so.21.0git  lib/libLLVMWebAssemblyUtils.so.21.0git  lib/libLLVMX86CodeGen.so.21.0git  lib/libLLVMX86AsmParser.so.21.0git  lib/libLLVMX86Desc.so.21.0git  lib/libLLVMX86Disassembler.so.21.0git  lib/libLLVMX86Info.so.21.0git  lib/libLLVMXCoreCodeGen.so.21.0git  lib/libLLVMXCoreDesc.so.21.0git  lib/libLLVMXCoreDisassembler.so.21.0git  lib/libLLVMXCoreInfo.so.21.0git  -lpthread  lib/libllvm_gtest_main.so.21.0
LVMAArch64Utils.so.21.0git  lib/libLLVMAMDGPUDesc.so.21.0git  lib/libLLVMAMDGPUInfo.so.21.0git  lib/libLLVMAMDGPUUtils.so.21.0git  lib/libLLVMARMDesc.so.21.0git  lib/libLLVMARMInfo.so.21.0git  lib/libLLVMARMUtils.so.21.0git  lib/libLLVMHexagonDesc.so.21.0git  lib/libLLVMHexagonInfo.so.21.0git  lib/libLLVMLanaiDesc.so.21.0git  lib/libLLVMLanaiInfo.so.21.0git  lib/libLLVMLoongArchDesc.so.21.0git  lib/libLLVMLoongArchInfo.so.21.0git  lib/libLLVMRISCVDesc.so.21.0git  lib/libLLVMRISCVInfo.so.21.0git  lib/libLLVMSystemZDesc.so.21.0git  lib/libLLVMSystemZInfo.so.21.0git  lib/libLLVMWebAssemblyDesc.so.21.0git  lib/libLLVMWebAssemblyInfo.so.21.0git  lib/libLLVMCodeGen.so.21.0git  lib/libLLVMTarget.so.21.0git  lib/libLLVMCore.so.21.0git  lib/libllvm_gtest.so.21.0git  lib/libLLVMSupport.so.21.0git  -Wl,-rpath-link,/home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-multistage-test/clang-ppc64le-multistage/stage2/lib && :
/usr/bin/ld: unittests/CodeGen/CGPluginTest/CMakeFiles/CGPluginTest.dir/PluginTest.cpp.o: undefined reference to symbol '_ZN4llvm9MCContextC1ERKNS_6TripleEPKNS_9MCAsmInfoEPKNS_14MCRegisterInfoEPKNS_15MCSubtargetInfoEPKNS_9SourceMgrEPKNS_15MCTargetOptionsEbNS_9StringRefE'
/home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-multistage-test/clang-ppc64le-multistage/stage2/lib/libLLVMMC.so.21.0git: error adding symbols: DSO missing from command line
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
[798/1225] Building CXX object tools/clang/tools/extra/unittests/clang-include-fixer/CMakeFiles/ClangIncludeFixerTests.dir/IncludeFixerTest.cpp.o
[800/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/StaticAnalyzer/NoStateChangeFuncVisitorTest.cpp.o
[801/1225] Building CXX object tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/IncludeInserterTest.cpp.o
[802/1225] Building CXX object unittests/tools/llvm-exegesis/CMakeFiles/LLVMExegesisTests.dir/RISCV/SnippetGeneratorTest.cpp.o
[803/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/CrossTU/CrossTranslationUnitTest.cpp.o
[804/1225] Building CXX object unittests/Option/CMakeFiles/OptionTests.dir/OptionParsingTest.cpp.o
[805/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Tooling/RecursiveASTVisitorTests/DeclRefExpr.cpp.o
[806/1225] Building CXX object unittests/IR/CMakeFiles/IRTests.dir/ConstantRangeTest.cpp.o
[807/1225] Building CXX object unittests/Transforms/Vectorize/CMakeFiles/VectorizeTests.dir/VPlanSlpTest.cpp.o
[808/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Tooling/ASTSelectionTest.cpp.o
[809/1225] Building CXX object unittests/IR/CMakeFiles/IRTests.dir/PatternMatch.cpp.o
[810/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Tooling/ToolingTest.cpp.o
[811/1225] Building CXX object unittests/CodeGen/GlobalISel/CMakeFiles/GlobalISelTests.dir/LegalizerHelperTest.cpp.o
[812/1225] Building CXX object unittests/DebugInfo/DWARF/CMakeFiles/DebugInfoDWARFTests.dir/DWARFDebugLineTest.cpp.o
[813/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Serialization/NoCommentsTest.cpp.o
[814/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/AST/NamedDeclPrinterTest.cpp.o
[815/1225] Building CXX object unittests/tools/llvm-exegesis/CMakeFiles/LLVMExegesisTests.dir/X86/TargetTest.cpp.o
[816/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/StaticAnalyzer/ParamRegionTest.cpp.o
[817/1225] Building CXX object unittests/ProfileData/CMakeFiles/ProfileDataTests.dir/MemProfTest.cpp.o
[818/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/AST/ASTDumperTest.cpp.o
[819/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/StaticAnalyzer/FalsePositiveRefutationBRVisitorTest.cpp.o
[820/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Frontend/SearchPathTest.cpp.o
[821/1225] Building CXX object unittests/tools/llvm-exegesis/CMakeFiles/LLVMExegesisTests.dir/X86/SnippetGeneratorTest.cpp.o
[822/1225] Building CXX object tools/clang/tools/extra/unittests/clang-doc/CMakeFiles/ClangDocTests.dir/BitcodeTest.cpp.o
[823/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Rewrite/RewriterTest.cpp.o
[824/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Tooling/StencilTest.cpp.o
[825/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/AST/SizelessTypesTest.cpp.o
[826/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Tooling/Syntax/TokensTest.cpp.o
[827/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/ASTMatchers/GtestMatchersTest.cpp.o
[828/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp.o
[829/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Frontend/OutputStreamTest.cpp.o
[830/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Frontend/CompilerInstanceTest.cpp.o
[831/1225] Building CXX object tools/clang/unittests/CMakeFiles/AllClangUnitTests.dir/Analysis/FlowSensitive/SignAnalysisTest.cpp.o

```

</details>

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


More information about the llvm-commits mailing list