[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:30:49 PDT 2025
llvm-ci wrote:
LLVM Buildbot has detected a new failure on builder `openmp-offload-sles-build-only` running on `rocm-worker-hw-04-sles` while building `llvm` at step 5 "compile-openmp".
Full details are available at: https://lab.llvm.org/buildbot/#/builders/140/builds/31818
<details>
<summary>Here is the relevant piece of the build log for the reference</summary>
```
Step 5 (compile-openmp) failure: build (failure)
...
44.052 [613/32/6788] Linking CXX static library lib/libMLIRSparseTensorPipelines.a
44.071 [612/32/6789] Linking CXX static library lib/libMLIRRegisterAllPasses.a
44.086 [611/32/6790] Linking CXX static library lib/libMLIRRegisterAllDialects.a
44.098 [610/32/6791] Linking CXX static library lib/libMLIRRegisterAllExtensions.a
44.113 [609/32/6792] Linking CXX static library lib/libMLIRJitRunner.a
44.127 [608/32/6793] Linking CXX static library lib/libMLIRCAPIGPU.a
44.142 [607/32/6794] Linking CXX static library lib/libMLIRCAPIConversion.a
44.154 [606/32/6795] Linking CXX static library lib/libMLIRCAPIRegisterEverything.a
44.596 [605/32/6796] Building CXX object tools/flang/lib/Parser/CMakeFiles/FortranParser.dir/cmake_pch.hxx.gch
45.118 [604/32/6797] Linking CXX shared library lib/libLTO.so.22.0git
FAILED: lib/libLTO.so.22.0git
: && /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-array-bounds -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wno-comment -Wno-misleading-indentation -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -Wl,-z,defs -Wl,-z,nodelete -Wl,-rpath-link,/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/./lib -Wl,--gc-sections -Wl,--version-script,"/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/tools/lto/LTO.exports" -shared -Wl,-soname,libLTO.so.22.0git -o lib/libLTO.so.22.0git tools/lto/CMakeFiles/LTO.dir/LTODisassembler.cpp.o tools/lto/CMakeFiles/LTO.dir/lto.cpp.o -Wl,-rpath,"\$ORIGIN/../lib:" lib/libLLVMX86AsmParser.a lib/libLLVMAMDGPUAsmParser.a lib/libLLVMX86CodeGen.a lib/libLLVMAMDGPUCodeGen.a lib/libLLVMX86Desc.a lib/libLLVMAMDGPUDesc.a lib/libLLVMX86Disassembler.a lib/libLLVMAMDGPUDisassembler.a lib/libLLVMX86Info.a lib/libLLVMAMDGPUInfo.a lib/libLLVMBitReader.a lib/libLLVMCore.a lib/libLLVMCodeGen.a lib/libLLVMLTO.a lib/libLLVMMC.a lib/libLLVMMCDisassembler.a lib/libLLVMSupport.a lib/libLLVMTarget.a lib/libLLVMTargetParser.a lib/libLLVMAsmPrinter.a lib/libLLVMMIRParser.a lib/libLLVMAMDGPUDesc.a lib/libLLVMAMDGPUInfo.a lib/libLLVMAMDGPUUtils.a lib/libLLVMPasses.a lib/libLLVMCFGuard.a lib/libLLVMGlobalISel.a lib/libLLVMSelectionDAG.a lib/libLLVMCodeGen.a lib/libLLVMTarget.a lib/libLLVMCodeGenTypes.a lib/libLLVMIRPrinter.a lib/libLLVMObjCARCOpts.a lib/libLLVMHipStdPar.a lib/libLLVMCoroutines.a lib/libLLVMipo.a lib/libLLVMInstrumentation.a lib/libLLVMVectorize.a lib/libLLVMSandboxIR.a lib/libLLVMFrontendOpenMP.a lib/libLLVMScalarOpts.a lib/libLLVMFrontendOffloading.a lib/libLLVMObjectYAML.a lib/libLLVMFrontendAtomic.a lib/libLLVMFrontendDirective.a lib/libLLVMCGData.a lib/libLLVMBitWriter.a lib/libLLVMAggressiveInstCombine.a lib/libLLVMExtensions.a lib/libLLVMInstCombine.a lib/libLLVMLinker.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/libLLVMMCParser.a lib/libLLVMMC.a lib/libLLVMIRReader.a lib/libLLVMBitReader.a lib/libLLVMAsmParser.a lib/libLLVMCore.a lib/libLLVMRemarks.a lib/libLLVMBitstreamReader.a lib/libLLVMTextAPI.a lib/libLLVMBinaryFormat.a lib/libLLVMTargetParser.a lib/libLLVMSupport.a lib/libLLVMDemangle.a -lrt -ldl -lpthread -lm /usr/lib64/libz.so /usr/lib64/libzstd.so && :
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: lib/libLLVMInstCombine.a(InstCombineSelect.cpp.o): in function `llvm::InstCombinerImpl::visitSelectInst(llvm::SelectInst&)::{lambda(bool, llvm::Value*, llvm::Value*)#2}::operator()(bool, llvm::Value*, llvm::Value*) const':
InstCombineSelect.cpp:(.text.unlikely._ZZN4llvm16InstCombinerImpl15visitSelectInstERNS_10SelectInstEENKUlbPNS_5ValueES4_E0_clEbS4_S4_+0x127): undefined reference to `ProfcheckDisableMetadataFixes'
collect2: error: ld returned 1 exit status
45.335 [604/31/6798] Linking CXX executable bin/llvm-lto
FAILED: bin/llvm-lto
: && /usr/bin/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-array-bounds -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wno-comment -Wno-misleading-indentation -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -Wl,-rpath-link,/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/./lib -Wl,--gc-sections tools/llvm-lto/CMakeFiles/llvm-lto.dir/llvm-lto.cpp.o -o bin/llvm-lto -Wl,-rpath,"\$ORIGIN/../lib:" lib/libLLVMX86AsmParser.a lib/libLLVMAMDGPUAsmParser.a lib/libLLVMX86CodeGen.a lib/libLLVMAMDGPUCodeGen.a lib/libLLVMX86Desc.a lib/libLLVMAMDGPUDesc.a lib/libLLVMX86Info.a lib/libLLVMAMDGPUInfo.a lib/libLLVMBitReader.a lib/libLLVMBitWriter.a lib/libLLVMCodeGen.a lib/libLLVMCore.a lib/libLLVMIRReader.a lib/libLLVMipo.a lib/libLLVMLTO.a lib/libLLVMMC.a lib/libLLVMObject.a lib/libLLVMSupport.a lib/libLLVMTarget.a lib/libLLVMTargetParser.a -lpthread lib/libLLVMMCDisassembler.a lib/libLLVMAMDGPUUtils.a lib/libLLVMAsmPrinter.a lib/libLLVMMIRParser.a lib/libLLVMPasses.a lib/libLLVMCFGuard.a lib/libLLVMGlobalISel.a lib/libLLVMSelectionDAG.a lib/libLLVMCodeGen.a lib/libLLVMTarget.a lib/libLLVMCodeGenTypes.a lib/libLLVMIRPrinter.a lib/libLLVMObjCARCOpts.a lib/libLLVMHipStdPar.a lib/libLLVMCoroutines.a lib/libLLVMipo.a lib/libLLVMInstrumentation.a lib/libLLVMVectorize.a lib/libLLVMSandboxIR.a lib/libLLVMFrontendOpenMP.a lib/libLLVMFrontendOffloading.a lib/libLLVMObjectYAML.a lib/libLLVMFrontendAtomic.a lib/libLLVMFrontendDirective.a lib/libLLVMScalarOpts.a lib/libLLVMCGData.a lib/libLLVMBitWriter.a lib/libLLVMAggressiveInstCombine.a lib/libLLVMInstCombine.a lib/libLLVMLinker.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/libLLVMObject.a lib/libLLVMIRReader.a lib/libLLVMBitReader.a lib/libLLVMAsmParser.a lib/libLLVMMCParser.a lib/libLLVMMC.a lib/libLLVMTextAPI.a lib/libLLVMDebugInfoCodeView.a lib/libLLVMDebugInfoMSF.a lib/libLLVMDebugInfoBTF.a lib/libLLVMFrontendHLSL.a lib/libLLVMCore.a lib/libLLVMRemarks.a lib/libLLVMBitstreamReader.a lib/libLLVMBinaryFormat.a lib/libLLVMTargetParser.a lib/libLLVMExtensions.a lib/libLLVMSupport.a lib/libLLVMDemangle.a -lrt -ldl -lpthread -lm /usr/lib64/libz.so /usr/lib64/libzstd.so && :
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: lib/libLLVMInstCombine.a(InstCombineSelect.cpp.o): in function `llvm::InstCombinerImpl::visitSelectInst(llvm::SelectInst&)::{lambda(bool, llvm::Value*, llvm::Value*)#2}::operator()(bool, llvm::Value*, llvm::Value*) const':
InstCombineSelect.cpp:(.text.unlikely._ZZN4llvm16InstCombinerImpl15visitSelectInstERNS_10SelectInstEENKUlbPNS_5ValueES4_E0_clEbS4_S4_+0x127): undefined reference to `ProfcheckDisableMetadataFixes'
collect2: error: ld returned 1 exit status
45.457 [604/30/6799] Building CXX object tools/flang/unittests/Evaluate/CMakeFiles/folding.test.dir/folding.cpp.o
45.515 [604/29/6800] Building CXX object tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIRAttr.cpp.o
45.876 [604/28/6801] Building CXX object tools/flang/lib/Optimizer/Support/CMakeFiles/FIRSupport.dir/InternalNames.cpp.o
46.228 [604/27/6802] Linking CXX executable bin/clang-sycl-linker
46.231 [604/26/6803] Building CXX object tools/flang/test/lib/OpenACC/CMakeFiles/FIRTestOpenACCInterfaces.dir/TestOpenACCInterfaces.cpp.o
46.782 [604/25/6804] Linking CXX executable bin/lld
FAILED: bin/lld
: && /usr/bin/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-array-bounds -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wno-comment -Wno-misleading-indentation -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -Wl,--export-dynamic -Wl,-rpath-link,/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/./lib tools/lld/tools/lld/CMakeFiles/lld.dir/lld.cpp.o tools/lld/tools/lld/CMakeFiles/lld.dir/lld-driver.cpp.o -o bin/lld -Wl,-rpath,"\$ORIGIN/../lib:" lib/libLLVMSupport.a lib/libLLVMTargetParser.a -lpthread lib/liblldCommon.a lib/liblldCOFF.a lib/liblldELF.a lib/liblldMachO.a lib/liblldMinGW.a lib/liblldWasm.a lib/liblldCOFF.a lib/libLLVMLibDriver.a lib/libLLVMWindowsDriver.a lib/libLLVMWindowsManifest.a lib/liblldCommon.a lib/libLLVMOption.a lib/libLLVMX86CodeGen.a lib/libLLVMX86AsmParser.a lib/libLLVMX86Desc.a lib/libLLVMX86Disassembler.a lib/libLLVMX86Info.a lib/libLLVMAMDGPUCodeGen.a lib/libLLVMAsmPrinter.a lib/libLLVMMIRParser.a lib/libLLVMAMDGPUAsmParser.a lib/libLLVMAMDGPUDisassembler.a lib/libLLVMAMDGPUDesc.a lib/libLLVMMCDisassembler.a lib/libLLVMAMDGPUInfo.a lib/libLLVMAMDGPUUtils.a lib/libLLVMLTO.a lib/libLLVMExtensions.a lib/libLLVMPasses.a lib/libLLVMCFGuard.a lib/libLLVMGlobalISel.a lib/libLLVMSelectionDAG.a lib/libLLVMCodeGen.a lib/libLLVMCGData.a lib/libLLVMObjCARCOpts.a lib/libLLVMTarget.a lib/libLLVMCodeGenTypes.a lib/libLLVMIRPrinter.a lib/libLLVMHipStdPar.a lib/libLLVMCoroutines.a lib/libLLVMipo.a lib/libLLVMBitWriter.a lib/libLLVMInstrumentation.a lib/libLLVMVectorize.a lib/libLLVMSandboxIR.a lib/libLLVMLinker.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/libLLVMFrontendHLSL.a lib/libLLVMFrontendDirective.a lib/libLLVMProfileData.a lib/libLLVMSymbolize.a lib/libLLVMDebugInfoPDB.a lib/libLLVMDebugInfoCodeView.a lib/libLLVMDebugInfoMSF.a lib/libLLVMDebugInfoGSYM.a lib/libLLVMDebugInfoDWARF.a lib/libLLVMDebugInfoDWARFLowLevel.a lib/libLLVMObject.a lib/libLLVMTextAPI.a lib/libLLVMMCParser.a lib/libLLVMMC.a lib/libLLVMIRReader.a lib/libLLVMBitReader.a lib/libLLVMAsmParser.a lib/libLLVMCore.a lib/libLLVMRemarks.a lib/libLLVMBitstreamReader.a lib/libLLVMBinaryFormat.a lib/libLLVMTargetParser.a lib/libLLVMDebugInfoBTF.a lib/libLLVMSupport.a -lrt -ldl -lpthread -lm /usr/lib64/libz.so /usr/lib64/libzstd.so lib/libLLVMDemangle.a && cd /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/tools/lld/tools/lld && /usr/bin/cmake -E create_symlink lld /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/./bin/lld-link && cd /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/tools/lld/tools/lld && /usr/bin/cmake -E create_symlink lld /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/./bin/ld.lld && cd /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/tools/lld/tools/lld && /usr/bin/cmake -E create_symlink lld /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/./bin/ld64.lld && cd /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/tools/lld/tools/lld && /usr/bin/cmake -E create_symlink lld /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/./bin/wasm-ld
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: lib/libLLVMInstCombine.a(InstCombineSelect.cpp.o): in function `llvm::InstCombinerImpl::visitSelectInst(llvm::SelectInst&)::{lambda(bool, llvm::Value*, llvm::Value*)#2}::operator()(bool, llvm::Value*, llvm::Value*) const':
InstCombineSelect.cpp:(.text.unlikely._ZZN4llvm16InstCombinerImpl15visitSelectInstERNS_10SelectInstEENKUlbPNS_5ValueES4_E0_clEbS4_S4_+0x127): undefined reference to `ProfcheckDisableMetadataFixes'
collect2: error: ld returned 1 exit status
46.835 [604/24/6805] Building CXX object tools/flang/lib/Optimizer/Builder/CMakeFiles/FIRBuilder.dir/Runtime/Execute.cpp.o
47.135 [604/23/6806] Building CXX object tools/flang/lib/Optimizer/Builder/CMakeFiles/FIRBuilder.dir/Runtime/Inquiry.cpp.o
47.510 [604/22/6807] Building CXX object tools/flang/lib/Optimizer/CodeGen/CMakeFiles/FIRCodeGen.dir/LLVMInsertChainFolder.cpp.o
47.518 [604/21/6808] Building CXX object tools/flang/lib/Optimizer/HLFIR/Transforms/CMakeFiles/HLFIRTransforms.dir/ExpressionSimplification.cpp.o
47.615 [604/20/6809] Building CXX object tools/flang/lib/Optimizer/HLFIR/Transforms/CMakeFiles/HLFIRTransforms.dir/InlineHLFIRCopyIn.cpp.o
47.974 [604/19/6810] Building CXX object tools/flang/lib/Optimizer/Transforms/CMakeFiles/FIRTransforms.dir/MemoryUtils.cpp.o
49.702 [604/18/6811] Building CXX object tools/flang/lib/Optimizer/Dialect/CUF/CMakeFiles/CUFDialect.dir/CUFDialect.cpp.o
50.885 [604/17/6812] Building CXX object tools/flang/lib/Optimizer/CodeGen/CMakeFiles/FIRCodeGen.dir/Target.cpp.o
/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/flang/lib/Optimizer/CodeGen/Target.cpp: In static member function ‘static std::optional<std::vector<mlir::Type, std::allocator<mlir::Type> > > {anonymous}::TargetAArch64::flattenTypeList(const TypeList&)’:
/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/flang/lib/Optimizer/CodeGen/Target.cpp:865:23: warning: unused variable ‘c’ [-Wunused-variable]
for (auto [c, type] : types) {
^
/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/flang/lib/Optimizer/CodeGen/Target.cpp: In member function ‘{anonymous}::TargetAArch64::NRegs {anonymous}::TargetAArch64::usedRegsForRecordType(mlir::Location, fir::RecordType) const’:
/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/flang/lib/Optimizer/CodeGen/Target.cpp:930:22: warning: unused variable ‘align’ [-Wunused-variable]
auto [size, align] = fir::getTypeSizeAndAlignmentOrCrash(
^
At global scope:
```
</details>
https://github.com/llvm/llvm-project/pull/159666
More information about the llvm-commits
mailing list