[llvm] [CodeGen] Replace CodeGenPassBuilder CRTP with virtual hooks (PR #216468)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 19 20:51:04 PDT 2026


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `amdgpu-clang-flang` running on `AMD-bb-w-05` while building `llvm` at step 3 "annotate".

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

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

```
Step 3 (annotate) failure: 'python ../llvm.src/offload/ci/openmp-offload-amdgpu-clang-flang.py ...' (failure)
...
[ 87%/28.038s :: 1077->14->7683 (of 8773)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86AsmPrinter.cpp.o
[ 87%/28.069s :: 1077->13->7684 (of 8773)] Linking CXX shared library lib/libclangDriver.so.24.0git
[ 87%/28.077s :: 1076->13->7685 (of 8773)] Creating library symlink lib/libclangDriver.so
[ 87%/28.123s :: 1073->15->7686 (of 8773)] Building CXX object lib/Passes/CMakeFiles/LLVMPasses.dir/CodeGenPassBuilder.cpp.o
[ 87%/28.157s :: 1072->15->7687 (of 8773)] Linking CXX shared library lib/libclangCrossTU.so.24.0git
[ 87%/28.162s :: 1071->15->7688 (of 8773)] Creating library symlink lib/libclangCrossTU.so
[ 87%/28.189s :: 1070->15->7689 (of 8773)] Linking CXX shared library lib/libclangTooling.so.24.0git
[ 87%/28.194s :: 1069->15->7690 (of 8773)] Creating library symlink lib/libclangTooling.so
[ 87%/28.195s :: 1066->17->7691 (of 8773)] Linking CXX executable bin/clang-offload-bundler
[ 87%/28.295s :: 1066->16->7692 (of 8773)] Linking CXX shared library lib/libLLVMPasses.so.24.0git
FAILED: lib/libLLVMPasses.so.24.0git 
: && /opt/rh/gcc-toolset-13/root/usr/bin/c++ -fPIC -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-dangling-reference -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-dangling-pointer -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG  -Wl,-z,defs -Wl,-z,nodelete   -Wl,-rpath-link,/home/botworker/bbot/amdgpu-clang-flang/build/llvm.build/./lib  -Wl,--gc-sections -shared -Wl,-soname,libLLVMPasses.so.24.0git -o lib/libLLVMPasses.so.24.0git lib/Passes/CMakeFiles/LLVMPasses.dir/CodeGenPassBuilder.cpp.o lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilder.cpp.o lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilderBindings.cpp.o lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilderPipelines.cpp.o lib/Passes/CMakeFiles/LLVMPasses.dir/StandardInstrumentations.cpp.o  -Wl,-rpath,"\$ORIGIN/../lib:\$ORIGIN/../lib/x86_64-unknown-linux-gnu:/home/botworker/bbot/amdgpu-clang-flang/build/llvm.build/lib:"  lib/libLLVMCFGuard.so.24.0git  lib/libLLVMGlobalISel.so.24.0git  lib/libLLVMCoroutines.so.24.0git  lib/libLLVMHipStdPar.so.24.0git  lib/libLLVMipo.so.24.0git  lib/libLLVMIRPrinter.so.24.0git  lib/libLLVMVectorize.so.24.0git  lib/libLLVMInstrumentation.so.24.0git  lib/libLLVMCodeGen.so.24.0git  lib/libLLVMObjCARCOpts.so.24.0git  lib/libLLVMTarget.so.24.0git  lib/libLLVMScalarOpts.so.24.0git  lib/libLLVMAggressiveInstCombine.so.24.0git  lib/libLLVMInstCombine.so.24.0git  lib/libLLVMTransformUtils.so.24.0git  lib/libLLVMAnalysis.so.24.0git  lib/libLLVMCore.so.24.0git  lib/libLLVMSupport.so.24.0git  -Wl,-rpath-link,/home/botworker/bbot/amdgpu-clang-flang/build/llvm.build/lib && :
/opt/rh/gcc-toolset-13/root/usr/libexec/gcc/x86_64-redhat-linux/13/ld: lib/Passes/CMakeFiles/LLVMPasses.dir/CodeGenPassBuilder.cpp.o: in function `llvm::CodeGenPassBuilder::buildPipeline(llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>&, llvm::AnalysisManager<llvm::Module>&, llvm::raw_pwrite_stream&, llvm::raw_pwrite_stream*, llvm::CodeGenFileType, llvm::MCContext&)':
CodeGenPassBuilder.cpp:(.text._ZN4llvm18CodeGenPassBuilder13buildPipelineERNS_11PassManagerINS_6ModuleENS_15AnalysisManagerIS2_JEEEJEEERS4_RNS_17raw_pwrite_streamEPS8_NS_15CodeGenFileTypeERNS_9MCContextE+0x5fd): undefined reference to `llvm::AsmPrinterAnalysis::Key'
/opt/rh/gcc-toolset-13/root/usr/libexec/gcc/x86_64-redhat-linux/13/ld: CodeGenPassBuilder.cpp:(.text._ZN4llvm18CodeGenPassBuilder13buildPipelineERNS_11PassManagerINS_6ModuleENS_15AnalysisManagerIS2_JEEEJEEERS4_RNS_17raw_pwrite_streamEPS8_NS_15CodeGenFileTypeERNS_9MCContextE+0xd52): undefined reference to `llvm::AsmPrinterAnalysis::Key'
collect2: error: ld returned 1 exit status
[ 87%/28.313s :: 1066->15->7693 (of 8773)] Linking CXX executable bin/clang-diff
[ 87%/28.324s :: 1066->14->7694 (of 8773)] Linking CXX executable bin/clang-refactor
[ 87%/28.325s :: 1066->13->7695 (of 8773)] Linking CXX executable bin/clang-installapi
[ 87%/28.352s :: 1066->12->7696 (of 8773)] Linking CXX shared library lib/libclangStaticAnalyzerCore.so.24.0git
[ 87%/28.688s :: 1066->11->7697 (of 8773)] Building AMDGPUGenAsmWriter.inc...
[ 87%/29.005s :: 1066->10->7698 (of 8773)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86MCInstLower.cpp.o
[ 87%/29.231s :: 1066->9->7699 (of 8773)] Building AMDGPUGenRegisterBank.inc...
[ 87%/29.857s :: 1066->8->7700 (of 8773)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86CodeGenPassBuilder.cpp.o
[ 87%/31.548s :: 1066->7->7701 (of 8773)] Building AMDGPUGenDAGISel.inc...
[ 87%/32.011s :: 1066->6->7702 (of 8773)] Building AMDGPUGenInstrInfo.inc...
[ 87%/32.117s :: 1066->5->7703 (of 8773)] Building CXX object lib/CodeGen/AsmPrinter/CMakeFiles/LLVMAsmPrinter.dir/AsmPrinter.cpp.o
[ 87%/32.310s :: 1066->4->7704 (of 8773)] Building AMDGPUGenGlobalISel.inc...
[ 87%/32.314s :: 1066->3->7705 (of 8773)] Building AMDGPUGenRegisterInfo.inc...
[ 87%/34.381s :: 1066->2->7706 (of 8773)] Building CXX object lib/LTO/CMakeFiles/LLVMLTO.dir/LTO.cpp.o
[ 87%/37.059s :: 1066->1->7707 (of 8773)] Building AMDGPUGenAsmMatcher.inc...
ninja: build stopped: subcommand failed.
Running: ccache -sv
Cache directory:              /home/botworker/.cache/ccache
Config file:                  /home/botworker/.config/ccache/ccache.conf
System config file:           /usr/local/etc/ccache.conf
Stats updated:                Thu Aug 20 03:49:59 2026
Cacheable calls:               4881 / 4883 (99.96%)
  Hits:                        4869 / 4881 (99.75%)
    Direct:                    4355 / 4869 (89.44%)
    Preprocessed:               514 / 4869 (10.56%)
  Misses:                        12 / 4881 ( 0.25%)
Uncacheable calls:                2 / 4883 ( 0.04%)
  Unsupported code directive:     2 /    2 (100.0%)
Successful lookups:
  Direct:                      4355 / 4883 (89.19%)
  Preprocessed:                 514 /  526 (97.72%)
Local storage:
  Cache size (GiB):             5.0 /  5.0 (99.95%)
Step 7 (compile-openmp) failure: compile-openmp (failure)
...
[ 87%/28.038s :: 1077->14->7683 (of 8773)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86AsmPrinter.cpp.o
[ 87%/28.069s :: 1077->13->7684 (of 8773)] Linking CXX shared library lib/libclangDriver.so.24.0git
[ 87%/28.077s :: 1076->13->7685 (of 8773)] Creating library symlink lib/libclangDriver.so
[ 87%/28.123s :: 1073->15->7686 (of 8773)] Building CXX object lib/Passes/CMakeFiles/LLVMPasses.dir/CodeGenPassBuilder.cpp.o
[ 87%/28.157s :: 1072->15->7687 (of 8773)] Linking CXX shared library lib/libclangCrossTU.so.24.0git
[ 87%/28.162s :: 1071->15->7688 (of 8773)] Creating library symlink lib/libclangCrossTU.so
[ 87%/28.189s :: 1070->15->7689 (of 8773)] Linking CXX shared library lib/libclangTooling.so.24.0git
[ 87%/28.194s :: 1069->15->7690 (of 8773)] Creating library symlink lib/libclangTooling.so
[ 87%/28.195s :: 1066->17->7691 (of 8773)] Linking CXX executable bin/clang-offload-bundler
[ 87%/28.295s :: 1066->16->7692 (of 8773)] Linking CXX shared library lib/libLLVMPasses.so.24.0git
FAILED: lib/libLLVMPasses.so.24.0git 
: && /opt/rh/gcc-toolset-13/root/usr/bin/c++ -fPIC -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-dangling-reference -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-dangling-pointer -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG  -Wl,-z,defs -Wl,-z,nodelete   -Wl,-rpath-link,/home/botworker/bbot/amdgpu-clang-flang/build/llvm.build/./lib  -Wl,--gc-sections -shared -Wl,-soname,libLLVMPasses.so.24.0git -o lib/libLLVMPasses.so.24.0git lib/Passes/CMakeFiles/LLVMPasses.dir/CodeGenPassBuilder.cpp.o lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilder.cpp.o lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilderBindings.cpp.o lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilderPipelines.cpp.o lib/Passes/CMakeFiles/LLVMPasses.dir/StandardInstrumentations.cpp.o  -Wl,-rpath,"\$ORIGIN/../lib:\$ORIGIN/../lib/x86_64-unknown-linux-gnu:/home/botworker/bbot/amdgpu-clang-flang/build/llvm.build/lib:"  lib/libLLVMCFGuard.so.24.0git  lib/libLLVMGlobalISel.so.24.0git  lib/libLLVMCoroutines.so.24.0git  lib/libLLVMHipStdPar.so.24.0git  lib/libLLVMipo.so.24.0git  lib/libLLVMIRPrinter.so.24.0git  lib/libLLVMVectorize.so.24.0git  lib/libLLVMInstrumentation.so.24.0git  lib/libLLVMCodeGen.so.24.0git  lib/libLLVMObjCARCOpts.so.24.0git  lib/libLLVMTarget.so.24.0git  lib/libLLVMScalarOpts.so.24.0git  lib/libLLVMAggressiveInstCombine.so.24.0git  lib/libLLVMInstCombine.so.24.0git  lib/libLLVMTransformUtils.so.24.0git  lib/libLLVMAnalysis.so.24.0git  lib/libLLVMCore.so.24.0git  lib/libLLVMSupport.so.24.0git  -Wl,-rpath-link,/home/botworker/bbot/amdgpu-clang-flang/build/llvm.build/lib && :
/opt/rh/gcc-toolset-13/root/usr/libexec/gcc/x86_64-redhat-linux/13/ld: lib/Passes/CMakeFiles/LLVMPasses.dir/CodeGenPassBuilder.cpp.o: in function `llvm::CodeGenPassBuilder::buildPipeline(llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>&, llvm::AnalysisManager<llvm::Module>&, llvm::raw_pwrite_stream&, llvm::raw_pwrite_stream*, llvm::CodeGenFileType, llvm::MCContext&)':
CodeGenPassBuilder.cpp:(.text._ZN4llvm18CodeGenPassBuilder13buildPipelineERNS_11PassManagerINS_6ModuleENS_15AnalysisManagerIS2_JEEEJEEERS4_RNS_17raw_pwrite_streamEPS8_NS_15CodeGenFileTypeERNS_9MCContextE+0x5fd): undefined reference to `llvm::AsmPrinterAnalysis::Key'
/opt/rh/gcc-toolset-13/root/usr/libexec/gcc/x86_64-redhat-linux/13/ld: CodeGenPassBuilder.cpp:(.text._ZN4llvm18CodeGenPassBuilder13buildPipelineERNS_11PassManagerINS_6ModuleENS_15AnalysisManagerIS2_JEEEJEEERS4_RNS_17raw_pwrite_streamEPS8_NS_15CodeGenFileTypeERNS_9MCContextE+0xd52): undefined reference to `llvm::AsmPrinterAnalysis::Key'
collect2: error: ld returned 1 exit status
[ 87%/28.313s :: 1066->15->7693 (of 8773)] Linking CXX executable bin/clang-diff
[ 87%/28.324s :: 1066->14->7694 (of 8773)] Linking CXX executable bin/clang-refactor
[ 87%/28.325s :: 1066->13->7695 (of 8773)] Linking CXX executable bin/clang-installapi
[ 87%/28.352s :: 1066->12->7696 (of 8773)] Linking CXX shared library lib/libclangStaticAnalyzerCore.so.24.0git
[ 87%/28.688s :: 1066->11->7697 (of 8773)] Building AMDGPUGenAsmWriter.inc...
[ 87%/29.005s :: 1066->10->7698 (of 8773)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86MCInstLower.cpp.o
[ 87%/29.231s :: 1066->9->7699 (of 8773)] Building AMDGPUGenRegisterBank.inc...
[ 87%/29.857s :: 1066->8->7700 (of 8773)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86CodeGenPassBuilder.cpp.o
[ 87%/31.548s :: 1066->7->7701 (of 8773)] Building AMDGPUGenDAGISel.inc...
[ 87%/32.011s :: 1066->6->7702 (of 8773)] Building AMDGPUGenInstrInfo.inc...
[ 87%/32.117s :: 1066->5->7703 (of 8773)] Building CXX object lib/CodeGen/AsmPrinter/CMakeFiles/LLVMAsmPrinter.dir/AsmPrinter.cpp.o
[ 87%/32.310s :: 1066->4->7704 (of 8773)] Building AMDGPUGenGlobalISel.inc...
[ 87%/32.314s :: 1066->3->7705 (of 8773)] Building AMDGPUGenRegisterInfo.inc...
[ 87%/34.381s :: 1066->2->7706 (of 8773)] Building CXX object lib/LTO/CMakeFiles/LLVMLTO.dir/LTO.cpp.o
[ 87%/37.059s :: 1066->1->7707 (of 8773)] Building AMDGPUGenAsmMatcher.inc...
ninja: build stopped: subcommand failed.
Running: ccache -sv
Cache directory:              /home/botworker/.cache/ccache
Config file:                  /home/botworker/.config/ccache/ccache.conf
System config file:           /usr/local/etc/ccache.conf
Stats updated:                Thu Aug 20 03:49:59 2026
Cacheable calls:               4881 / 4883 (99.96%)
  Hits:                        4869 / 4881 (99.75%)
    Direct:                    4355 / 4869 (89.44%)
    Preprocessed:               514 / 4869 (10.56%)
  Misses:                        12 / 4881 ( 0.25%)
Uncacheable calls:                2 / 4883 ( 0.04%)
  Unsupported code directive:     2 /    2 (100.0%)
Successful lookups:
  Direct:                      4355 / 4883 (89.19%)
  Preprocessed:                 514 /  526 (97.72%)
Local storage:
  Cache size (GiB):             5.0 /  5.0 (99.95%)

```

</details>

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


More information about the llvm-commits mailing list