[llvm] [InstCombine] Preserve profile after folding select instructions with conditionals (PR #159666)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 3 10:22:10 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `cross-project-tests-sie-ubuntu-dwarf5` running on `doug-worker-1b` while building `llvm` at step 5 "build-unified-tree".

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

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

```
Step 5 (build-unified-tree) failure: build (failure)
...
18.058 [50/6/77] Linking CXX executable bin/diagtool
19.240 [50/5/78] Linking CXX executable bin/clang-diff
19.636 [50/4/79] Linking CXX executable bin/clang-refactor
19.665 [50/3/80] Linking CXX executable bin/clang-installapi
24.209 [50/2/81] Building CXX object lib/CodeGen/AsmPrinter/CMakeFiles/LLVMAsmPrinter.dir/AsmPrinter.cpp.o
24.270 [49/2/82] Linking CXX static library lib/libLLVMAsmPrinter.a
24.348 [42/8/83] Linking CXX executable bin/clang-fuzzer-dictionary
24.786 [41/8/84] Linking CXX executable bin/clang-offload-packager
26.396 [40/8/85] Linking CXX executable bin/clang-sycl-linker
26.686 [39/8/86] Linking CXX executable bin/bugpoint
FAILED: bin/bugpoint 
: && /opt/ccache/bin/g++ -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-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -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 -fuse-ld=gold   -Wl,--export-dynamic tools/bugpoint/CMakeFiles/bugpoint.dir/BugDriver.cpp.o tools/bugpoint/CMakeFiles/bugpoint.dir/CrashDebugger.cpp.o tools/bugpoint/CMakeFiles/bugpoint.dir/ExecutionDriver.cpp.o tools/bugpoint/CMakeFiles/bugpoint.dir/ExtractFunction.cpp.o tools/bugpoint/CMakeFiles/bugpoint.dir/FindBugs.cpp.o tools/bugpoint/CMakeFiles/bugpoint.dir/Miscompilation.cpp.o tools/bugpoint/CMakeFiles/bugpoint.dir/OptimizerDriver.cpp.o tools/bugpoint/CMakeFiles/bugpoint.dir/ToolRunner.cpp.o tools/bugpoint/CMakeFiles/bugpoint.dir/bugpoint.cpp.o -o bin/bugpoint  -Wl,-rpath,"\$ORIGIN/../lib:"  lib/libLLVMX86AsmParser.a  lib/libLLVMX86CodeGen.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Info.a  lib/libLLVMAnalysis.a  lib/libLLVMBitWriter.a  lib/libLLVMCodeGen.a  lib/libLLVMExtensions.a  lib/libLLVMCore.a  lib/libLLVMipo.a  lib/libLLVMIRReader.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMInstrumentation.a  lib/libLLVMLinker.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMScalarOpts.a  lib/libLLVMSupport.a  lib/libLLVMTarget.a  lib/libLLVMTargetParser.a  lib/libLLVMTransformUtils.a  lib/libLLVMVectorize.a  lib/libLLVMMCDisassembler.a  lib/libLLVMAsmPrinter.a  lib/libLLVMCFGuard.a  lib/libLLVMGlobalISel.a  lib/libLLVMIRPrinter.a  lib/libLLVMSelectionDAG.a  lib/libLLVMCodeGen.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMCGData.a  lib/libLLVMTarget.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMBitWriter.a  lib/libLLVMSandboxIR.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMTransformUtils.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMObject.a  lib/libLLVMIRReader.a  lib/libLLVMAsmParser.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMBitReader.a  lib/libLLVMTextAPI.a  lib/libLLVMCore.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMFrontendDirective.a  lib/libLLVMSupport.a  lib/libLLVMDemangle.a  -lrt  -ldl  -lm  /usr/lib/x86_64-linux-gnu/libz.so && :
lib/libLLVMInstCombine.a(InstCombineSelect.cpp.o):InstCombineSelect.cpp:function llvm::InstCombinerImpl::visitSelectInst(llvm::SelectInst&)::{lambda(bool, llvm::Value*, llvm::Value*)#2}::operator()(bool, llvm::Value*, llvm::Value*) const: error: undefined reference to 'ProfcheckDisableMetadataFixes'
collect2: error: ld returned 1 exit status
26.944 [39/7/87] Linking CXX executable bin/dsymutil
27.202 [39/6/88] Linking CXX executable bin/clang-extdef-mapping
27.244 [39/5/89] Linking CXX executable bin/clang-scan-deps
27.945 [39/4/90] Building CXX object lib/LTO/CMakeFiles/LLVMLTO.dir/LTO.cpp.o
28.330 [39/3/91] Linking CXX shared library lib/libclang.so.22.0.0git
28.741 [39/2/92] Linking CXX executable bin/llc
FAILED: bin/llc 
: && /opt/ccache/bin/g++ -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-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -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 -fuse-ld=gold   -Wl,--export-dynamic tools/llc/CMakeFiles/llc.dir/llc.cpp.o tools/llc/CMakeFiles/llc.dir/NewPMDriver.cpp.o -o bin/llc  -Wl,-rpath,"\$ORIGIN/../lib:"  lib/libLLVMX86AsmParser.a  lib/libLLVMX86CodeGen.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Info.a  lib/libLLVMAnalysis.a  lib/libLLVMAsmPrinter.a  lib/libLLVMCodeGen.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMCore.a  lib/libLLVMIRPrinter.a  lib/libLLVMIRReader.a  lib/libLLVMMC.a  lib/libLLVMMIRParser.a  lib/libLLVMPasses.a  lib/libLLVMRemarks.a  lib/libLLVMScalarOpts.a  lib/libLLVMSelectionDAG.a  lib/libLLVMSupport.a  lib/libLLVMTarget.a  lib/libLLVMTargetParser.a  lib/libLLVMTransformUtils.a  lib/libLLVMVectorize.a  lib/libLLVMMCDisassembler.a  lib/libLLVMIRPrinter.a  lib/libLLVMCFGuard.a  lib/libLLVMGlobalISel.a  lib/libLLVMSelectionDAG.a  lib/libLLVMCodeGen.a  lib/libLLVMCGData.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMTarget.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMCoroutines.a  lib/libLLVMHipStdPar.a  lib/libLLVMipo.a  lib/libLLVMVectorize.a  lib/libLLVMSandboxIR.a  lib/libLLVMInstrumentation.a  lib/libLLVMBitWriter.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMFrontendDirective.a  lib/libLLVMLinker.a  lib/libLLVMInstCombine.a  lib/libLLVMTransformUtils.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMObject.a  lib/libLLVMIRReader.a  lib/libLLVMAsmParser.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMBitReader.a  lib/libLLVMTextAPI.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  lib/libLLVMDemangle.a  -lrt  -ldl  -lm  /usr/lib/x86_64-linux-gnu/libz.so && :
lib/libLLVMInstCombine.a(InstCombineSelect.cpp.o):InstCombineSelect.cpp:function llvm::InstCombinerImpl::visitSelectInst(llvm::SelectInst&)::{lambda(bool, llvm::Value*, llvm::Value*)#2}::operator()(bool, llvm::Value*, llvm::Value*) const: error: undefined reference to 'ProfcheckDisableMetadataFixes'
collect2: error: ld returned 1 exit status
28.772 [39/1/93] Linking CXX executable bin/clang-check
ninja: build stopped: subcommand failed.

```

</details>

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


More information about the llvm-commits mailing list