[llvm] [X86] Remove redundant `cmp` before `adc` after `lzcnt` or `tzcnt` (PR #208392)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 13 15:59:11 PDT 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results
* 63974 tests passed
* 1884 tests skipped
All executed tests passed, but another part of the build **failed**. Click on a failure below to see the details.
<details>
<summary>[code=4294967295] unittests/Transforms/IPO/IPOTests.exe</summary>
```
FAILED: [code=4294967295] unittests/Transforms/IPO/IPOTests.exe
C:\Windows\system32\cmd.exe /C "cd . && C:\BuildTools\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe -E vs_link_exe --msvc-ver=1944 --intdir=unittests\Transforms\IPO\CMakeFiles\IPOTests.dir --rc="C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\rc.exe" --mt="C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\mt.exe" --manifests -- C:\clang\clang-msvc\bin\lld-link.exe /nologo unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\LowerTypeTests.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\WholeProgramDevirt.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\AttributorTest.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\FunctionSpecializationTest.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\ImportIDTableTests.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\MergeFunctionsTest.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\__\__\__\resources\windows_version_resource.rc.res /out:unittests\Transforms\IPO\IPOTests.exe /implib:unittests\Transforms\IPO\IPOTests.lib /pdb:unittests\Transforms\IPO\IPOTests.pdb /version:0.0 /MANIFEST:NO /Brepro /INCREMENTAL:NO /subsystem:console /STACK:10000000 lib\LLVMAnalysis.lib lib\LLVMAsmParser.lib lib\LLVMCore.lib lib\LLVMipo.lib lib\LLVMSupport.lib lib\LLVMTargetParser.lib lib\LLVMTransformUtils.lib lib\llvm_gtest_main.lib lib\llvm_gtest.lib lib\LLVMBitWriter.lib lib\LLVMFrontendOpenMP.lib lib\LLVMFrontendOffloading.lib lib\LLVMObjectYAML.lib lib\LLVMFrontendAtomic.lib lib\LLVMFrontendDirective.lib lib\LLVMLinker.lib lib\LLVMScalarOpts.lib lib\LLVMAggressiveInstCombine.lib lib\LLVMInstCombine.lib lib\LLVMVectorize.lib lib\LLVMSandboxIR.lib lib\LLVMInstrumentation.lib lib\LLVMFrontendHLSL.lib lib\LLVMProfileData.lib lib\LLVMSymbolize.lib lib\LLVMDebugInfoGSYM.lib lib\LLVMDebugInfoPDB.lib "C:\BuildTools\DIA SDK\lib\amd64\diaguids.lib" lib\LLVMDebugInfoCodeView.lib lib\LLVMDebugInfoMSF.lib lib\LLVMDebugInfoBTF.lib lib\LLVMDebugInfoDWARF.lib lib\LLVMObject.lib lib\LLVMIRReader.lib lib\LLVMBitReader.lib lib\LLVMRemarks.lib lib\LLVMBitstreamReader.lib lib\LLVMMCParser.lib lib\LLVMTextAPI.lib lib\LLVMMC.lib lib\LLVMDebugInfoDWARFLowLevel.lib lib\LLVMBinaryFormat.lib lib\LLVMDemangle.lib psapi.lib shell32.lib ole32.lib uuid.lib advapi32.lib ws2_32.lib ntdll.lib delayimp.lib -delayload:shell32.dll -delayload:ole32.dll kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib && cd ."
LINK: command "C:\clang\clang-msvc\bin\lld-link.exe /nologo unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\LowerTypeTests.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\WholeProgramDevirt.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\AttributorTest.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\FunctionSpecializationTest.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\ImportIDTableTests.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\MergeFunctionsTest.cpp.obj unittests\Transforms\IPO\CMakeFiles\IPOTests.dir\__\__\__\resources\windows_version_resource.rc.res /out:unittests\Transforms\IPO\IPOTests.exe /implib:unittests\Transforms\IPO\IPOTests.lib /pdb:unittests\Transforms\IPO\IPOTests.pdb /version:0.0 /MANIFEST:NO /Brepro /INCREMENTAL:NO /subsystem:console /STACK:10000000 lib\LLVMAnalysis.lib lib\LLVMAsmParser.lib lib\LLVMCore.lib lib\LLVMipo.lib lib\LLVMSupport.lib lib\LLVMTargetParser.lib lib\LLVMTransformUtils.lib lib\llvm_gtest_main.lib lib\llvm_gtest.lib lib\LLVMBitWriter.lib lib\LLVMFrontendOpenMP.lib lib\LLVMFrontendOffloading.lib lib\LLVMObjectYAML.lib lib\LLVMFrontendAtomic.lib lib\LLVMFrontendDirective.lib lib\LLVMLinker.lib lib\LLVMScalarOpts.lib lib\LLVMAggressiveInstCombine.lib lib\LLVMInstCombine.lib lib\LLVMVectorize.lib lib\LLVMSandboxIR.lib lib\LLVMInstrumentation.lib lib\LLVMFrontendHLSL.lib lib\LLVMProfileData.lib lib\LLVMSymbolize.lib lib\LLVMDebugInfoGSYM.lib lib\LLVMDebugInfoPDB.lib C:\BuildTools\DIA SDK\lib\amd64\diaguids.lib lib\LLVMDebugInfoCodeView.lib lib\LLVMDebugInfoMSF.lib lib\LLVMDebugInfoBTF.lib lib\LLVMDebugInfoDWARF.lib lib\LLVMObject.lib lib\LLVMIRReader.lib lib\LLVMBitReader.lib lib\LLVMRemarks.lib lib\LLVMBitstreamReader.lib lib\LLVMMCParser.lib lib\LLVMTextAPI.lib lib\LLVMMC.lib lib\LLVMDebugInfoDWARFLowLevel.lib lib\LLVMBinaryFormat.lib lib\LLVMDemangle.lib psapi.lib shell32.lib ole32.lib uuid.lib advapi32.lib ws2_32.lib ntdll.lib delayimp.lib -delayload:shell32.dll -delayload:ole32.dll kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib" failed (exit code 1) with the following output:
lld-link: error: undefined symbol: private: bool __cdecl llvm::DWARFExpression::Operation::extract(class llvm::DataExtractor, unsigned char, unsigned __int64, class std::optional<enum llvm::dwarf::DwarfFormat>)
>>> referenced by LLVMProfileData.lib(InstrProfCorrelator.cpp.obj):(private: class std::optional<unsigned __int64> __cdecl llvm::DwarfInstrProfCorrelator<unsigned __int64>::getLocation(class llvm::DWARFDie const &) const)
>>> referenced by LLVMProfileData.lib(InstrProfCorrelator.cpp.obj):(private: class std::optional<unsigned __int64> __cdecl llvm::DwarfInstrProfCorrelator<unsigned __int64>::getLocation(class llvm::DWARFDie const &) const)
>>> referenced by LLVMProfileData.lib(InstrProfCorrelator.cpp.obj):(private: class std::optional<unsigned __int64> __cdecl llvm::DwarfInstrProfCorrelator<unsigned int>::getLocation(class llvm::DWARFDie const &) const)
>>> referenced 16 more times
lld-link: error: undefined symbol: public: class llvm::Expected<unsigned __int64> __cdecl llvm::dwarf::CFIProgram::Instruction::getOperandAsUnsigned(class llvm::dwarf::CFIProgram const &, unsigned int) const
>>> referenced by LLVMMC.lib(MCSFrame.cpp.obj):(private: bool __cdecl `anonymous namespace'::SFrameEmitterImpl::handleCFI(struct `anonymous namespace'::SFrameFDE &, struct `anonymous namespace'::SFrameFRE &, class llvm::MCCFIInstruction const &))
>>> referenced by LLVMMC.lib(MCSFrame.cpp.obj):(private: bool __cdecl `anonymous namespace'::SFrameEmitterImpl::handleCFI(struct `anonymous namespace'::SFrameFDE &, struct `anonymous namespace'::SFrameFRE &, class llvm::MCCFIInstruction const &))
lld-link: error: undefined symbol: public: class llvm::Expected<__int64> __cdecl llvm::dwarf::CFIProgram::Instruction::getOperandAsSigned(class llvm::dwarf::CFIProgram const &, unsigned int) const
>>> referenced by LLVMMC.lib(MCSFrame.cpp.obj):(private: bool __cdecl `anonymous namespace'::SFrameEmitterImpl::handleCFI(struct `anonymous namespace'::SFrameFDE &, struct `anonymous namespace'::SFrameFRE &, class llvm::MCCFIInstruction const &))
>>> referenced by LLVMMC.lib(MCSFrame.cpp.obj):(private: bool __cdecl `anonymous namespace'::SFrameEmitterImpl::handleCFI(struct `anonymous namespace'::SFrameFDE &, struct `anonymous namespace'::SFrameFRE &, class llvm::MCCFIInstruction const &))
lld-link: error: undefined symbol: public: static class llvm::dwarf::UnwindLocation __cdecl llvm::dwarf::UnwindLocation::createUnspecified(void)
>>> referenced by LLVMDebugInfoDWARF.lib(DWARFDebugFrame.cpp.obj):(class llvm::Expected<class llvm::dwarf::UnwindTable> __cdecl llvm::dwarf::createUnwindTable(class llvm::dwarf::FDE const *))
>>> referenced by LLVMDebugInfoDWARF.lib(DWARFDebugFrame.cpp.obj):(class llvm::Expected<class llvm::dwarf::UnwindTable> __cdecl llvm::dwarf::createUnwindTable(class llvm::dwarf::CIE const *))
lld-link: error: undefined symbol: class llvm::Expected<class std::vector<class llvm::dwarf::UnwindRow, class std::allocator<class llvm::dwarf::UnwindRow>>> __cdecl llvm::dwarf::parseRows(class llvm::dwarf::CFIProgram const &, class llvm::dwarf::UnwindRow &, class llvm::dwarf::RegisterLocations const *)
>>> referenced by LLVMDebugInfoDWARF.lib(DWARFDebugFrame.cpp.obj):(class llvm::Expected<class llvm::dwarf::UnwindTable> __cdecl llvm::dwarf::createUnwindTable(class llvm::dwarf::FDE const *))
>>> referenced by LLVMDebugInfoDWARF.lib(DWARFDebugFrame.cpp.obj):(class llvm::Expected<class llvm::dwarf::UnwindTable> __cdecl llvm::dwarf::createUnwindTable(class llvm::dwarf::FDE const *))
>>> referenced by LLVMDebugInfoDWARF.lib(DWARFDebugFrame.cpp.obj):(class llvm::Expected<class llvm::dwarf::UnwindTable> __cdecl llvm::dwarf::createUnwindTable(class llvm::dwarf::CIE const *))
lld-link: error: undefined symbol: public: class std::optional<unsigned int> __cdecl llvm::DWARFExpression::Operation::getSubCode(void) const
>>> referenced by LLVMDebugInfoDWARF.lib(DWARFExpressionPrinter.cpp.obj):(void __cdecl llvm::printDwarfExpression(class llvm::DWARFExpression const *, class llvm::raw_ostream &, struct llvm::DIDumpOptions, class llvm::DWARFUnit *, bool))
>>> referenced by LLVMDebugInfoDWARF.lib(DWARFExpressionPrinter.cpp.obj):(bool __cdecl llvm::printCompactDWARFExpr(class llvm::raw_ostream &, class llvm::DWARFExpression::iterator, class llvm::DWARFExpression::iterator, class std::function<class llvm::StringRef __cdecl(unsigned __int64, bool)>))
lld-link: error: undefined symbol: public: class llvm::StringRef __cdecl llvm::dwarf::CFIProgram::callFrameString(unsigned int) const
>>> referenced by LLVMDebugInfoDWARF.lib(DWARFCFIPrinter.cpp.obj):(void __cdecl llvm::dwarf::printCFIProgram(class llvm::dwarf::CFIProgram const &, class llvm::raw_ostream &, struct llvm::DIDumpOptions const &, unsigned int, class std::optional<unsigned __int64>))
>>> referenced by LLVMDebugInfoDWARF.lib(DWARFCFIPrinter.cpp.obj):(void __cdecl llvm::dwarf::printCFIProgram(class llvm::dwarf::CFIProgram const &, class llvm::raw_ostream &, struct llvm::DIDumpOptions const &, unsigned int, class std::optional<unsigned __int64>))
lld-link: error: undefined symbol: public: static class llvm::ArrayRef<enum llvm::dwarf::CFIProgram::OperandType[3]> __cdecl llvm::dwarf::CFIProgram::getOperandTypes(void)
>>> referenced by LLVMDebugInfoDWARF.lib(DWARFCFIPrinter.cpp.obj):(void __cdecl llvm::dwarf::printCFIProgram(class llvm::dwarf::CFIProgram const &, class llvm::raw_ostream &, struct llvm::DIDumpOptions const &, unsigned int, class std::optional<unsigned __int64>))
```
</details>
If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.
https://github.com/llvm/llvm-project/pull/208392
More information about the llvm-commits
mailing list