[clang] [CIR][CUDA] Shadow variables, internalize device side variables, lower poison attribute (PR #190087)
via cfe-commits
cfe-commits at lists.llvm.org
Sat Apr 4 10:07:11 PDT 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results
* 50385 tests passed
* 1637 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] tools/clang/tools/extra/unittests/clang-include-fixer/find-all-symbols/FindAllSymbolsTests.exe</summary>
```
FAILED: [code=4294967295] tools/clang/tools/extra/unittests/clang-include-fixer/find-all-symbols/FindAllSymbolsTests.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=tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\CMakeFiles\FindAllSymbolsTests.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 tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\CMakeFiles\FindAllSymbolsTests.dir\FindAllSymbolsTests.cpp.obj tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\CMakeFiles\FindAllSymbolsTests.dir\C_\_work\llvm-project\llvm-project\llvm\resources\windows_version_resource.rc.res /out:tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\FindAllSymbolsTests.exe /implib:tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\FindAllSymbolsTests.lib /pdb:tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\FindAllSymbolsTests.pdb /version:0.0 /MANIFEST:NO /STACK:10000000 /INCREMENTAL:NO /subsystem:console lib\LLVMFrontendOpenMP.lib lib\LLVMSupport.lib lib\llvm_gtest_main.lib lib\llvm_gtest.lib lib\clangAST.lib lib\clangASTMatchers.lib lib\clangBasic.lib lib\clangFrontend.lib lib\clangLex.lib lib\clangSerialization.lib lib\clangTooling.lib lib\findAllSymbols.lib lib\clangDriver.lib lib\clangDependencyScanning.lib lib\clangScalableStaticAnalysisFrameworkAnalyses.lib lib\clangScalableStaticAnalysisFrameworkFrontend.lib lib\clangOptions.lib lib\clangParse.lib lib\LLVMPlugins.lib lib\clangSema.lib lib\clangAPINotes.lib lib\clangEdit.lib lib\clangAnalysisLifetimeSafety.lib lib\clangAnalysis.lib lib\clangSupport.lib lib\clangScalableStaticAnalysisFrameworkCore.lib lib\clangUnifiedSymbolResolution.lib version.lib lib\LLVMWindowsDriver.lib lib\LLVMOption.lib lib\clangFormat.lib lib\clangToolingInclusions.lib lib\clangToolingCore.lib lib\clangRewrite.lib lib\LLVMScalarOpts.lib lib\LLVMAggressiveInstCombine.lib lib\LLVMInstCombine.lib lib\LLVMFrontendOffloading.lib lib\LLVMTransformUtils.lib lib\LLVMObjectYAML.lib lib\LLVMFrontendAtomic.lib lib\LLVMAnalysis.lib lib\LLVMFrontendHLSL.lib lib\LLVMProfileData.lib lib\LLVMSymbolize.lib lib\LLVMDebugInfoGSYM.lib lib\LLVMDebugInfoPDB.lib lib\LLVMDebugInfoCodeView.lib "C:\BuildTools\DIA SDK\lib\amd64\diaguids.lib" lib\LLVMDebugInfoMSF.lib lib\LLVMDebugInfoBTF.lib lib\LLVMDebugInfoDWARF.lib lib\LLVMObject.lib lib\LLVMMCParser.lib lib\LLVMMC.lib lib\LLVMDebugInfoDWARFLowLevel.lib lib\LLVMIRReader.lib lib\LLVMBitReader.lib lib\LLVMAsmParser.lib lib\LLVMCore.lib lib\LLVMRemarks.lib lib\LLVMBitstreamReader.lib lib\LLVMTextAPI.lib lib\LLVMBinaryFormat.lib lib\LLVMFrontendDirective.lib lib\LLVMTargetParser.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 tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\CMakeFiles\FindAllSymbolsTests.dir\FindAllSymbolsTests.cpp.obj tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\CMakeFiles\FindAllSymbolsTests.dir\C_\_work\llvm-project\llvm-project\llvm\resources\windows_version_resource.rc.res /out:tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\FindAllSymbolsTests.exe /implib:tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\FindAllSymbolsTests.lib /pdb:tools\clang\tools\extra\unittests\clang-include-fixer\find-all-symbols\FindAllSymbolsTests.pdb /version:0.0 /MANIFEST:NO /STACK:10000000 /INCREMENTAL:NO /subsystem:console lib\LLVMFrontendOpenMP.lib lib\LLVMSupport.lib lib\llvm_gtest_main.lib lib\llvm_gtest.lib lib\clangAST.lib lib\clangASTMatchers.lib lib\clangBasic.lib lib\clangFrontend.lib lib\clangLex.lib lib\clangSerialization.lib lib\clangTooling.lib lib\findAllSymbols.lib lib\clangDriver.lib lib\clangDependencyScanning.lib lib\clangScalableStaticAnalysisFrameworkAnalyses.lib lib\clangScalableStaticAnalysisFrameworkFrontend.lib lib\clangOptions.lib lib\clangParse.lib lib\LLVMPlugins.lib lib\clangSema.lib lib\clangAPINotes.lib lib\clangEdit.lib lib\clangAnalysisLifetimeSafety.lib lib\clangAnalysis.lib lib\clangSupport.lib lib\clangScalableStaticAnalysisFrameworkCore.lib lib\clangUnifiedSymbolResolution.lib version.lib lib\LLVMWindowsDriver.lib lib\LLVMOption.lib lib\clangFormat.lib lib\clangToolingInclusions.lib lib\clangToolingCore.lib lib\clangRewrite.lib lib\LLVMScalarOpts.lib lib\LLVMAggressiveInstCombine.lib lib\LLVMInstCombine.lib lib\LLVMFrontendOffloading.lib lib\LLVMTransformUtils.lib lib\LLVMObjectYAML.lib lib\LLVMFrontendAtomic.lib lib\LLVMAnalysis.lib lib\LLVMFrontendHLSL.lib lib\LLVMProfileData.lib lib\LLVMSymbolize.lib lib\LLVMDebugInfoGSYM.lib lib\LLVMDebugInfoPDB.lib lib\LLVMDebugInfoCodeView.lib C:\BuildTools\DIA SDK\lib\amd64\diaguids.lib lib\LLVMDebugInfoMSF.lib lib\LLVMDebugInfoBTF.lib lib\LLVMDebugInfoDWARF.lib lib\LLVMObject.lib lib\LLVMMCParser.lib lib\LLVMMC.lib lib\LLVMDebugInfoDWARFLowLevel.lib lib\LLVMIRReader.lib lib\LLVMBitReader.lib lib\LLVMAsmParser.lib lib\LLVMCore.lib lib\LLVMRemarks.lib lib\LLVMBitstreamReader.lib lib\LLVMTextAPI.lib lib\LLVMBinaryFormat.lib lib\LLVMFrontendDirective.lib lib\LLVMTargetParser.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: public: __cdecl llvm::CodeExtractorAnalysisCache::CodeExtractorAnalysisCache(class llvm::Function &)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: void __cdecl llvm::OpenMPIRBuilder::finalize(class llvm::Function *))
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl llvm::OpenMPIRBuilder::createParallel(struct llvm::OpenMPIRBuilder::LocationDescription const &, class llvm::IRBuilderBase::InsertPoint, class llvm::function_ref<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint, class llvm::IRBuilderBase::InsertPoint)>, class llvm::function_ref<class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl(class llvm::IRBuilderBase::InsertPoint, class llvm::IRBuilderBase::InsertPoint, class llvm::Value &, class llvm::Value &, class llvm::Value *&)>, class std::function<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint)>, class llvm::Value *, class llvm::Value *, enum llvm::omp::ProcBindKind, bool))
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(private: class llvm::IRBuilderBase::InsertPoint __cdecl llvm::OpenMPIRBuilder::applyWorkshareLoopTarget(class llvm::DebugLoc, class llvm::CanonicalLoopInfo *, class llvm::IRBuilderBase::InsertPoint, enum llvm::omp::WorksharingLoopType, bool))
lld-link: error: undefined symbol: public: __cdecl llvm::CodeExtractor::CodeExtractor(class llvm::ArrayRef<class llvm::BasicBlock *>, class llvm::DominatorTree *, bool, class llvm::BlockFrequencyInfo *, class llvm::BranchProbabilityInfo *, class llvm::AssumptionCache *, bool, bool, class llvm::BasicBlock *, class std::basic_string<char, struct std::char_traits<char>, class std::allocator<char>>, bool)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: void __cdecl llvm::OpenMPIRBuilder::finalize(class llvm::Function *))
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl llvm::OpenMPIRBuilder::createParallel(struct llvm::OpenMPIRBuilder::LocationDescription const &, class llvm::IRBuilderBase::InsertPoint, class llvm::function_ref<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint, class llvm::IRBuilderBase::InsertPoint)>, class llvm::function_ref<class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl(class llvm::IRBuilderBase::InsertPoint, class llvm::IRBuilderBase::InsertPoint, class llvm::Value &, class llvm::Value &, class llvm::Value *&)>, class std::function<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint)>, class llvm::Value *, class llvm::Value *, enum llvm::omp::ProcBindKind, bool))
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(private: class llvm::IRBuilderBase::InsertPoint __cdecl llvm::OpenMPIRBuilder::applyWorkshareLoopTarget(class llvm::DebugLoc, class llvm::CanonicalLoopInfo *, class llvm::IRBuilderBase::InsertPoint, enum llvm::omp::WorksharingLoopType, bool))
lld-link: error: undefined symbol: public: bool __cdecl llvm::CodeExtractor::isEligible(void) const
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: void __cdecl llvm::OpenMPIRBuilder::finalize(class llvm::Function *))
lld-link: error: undefined symbol: public: void __cdecl llvm::CodeExtractor::excludeArgFromAggregate(class llvm::Value *)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: void __cdecl llvm::OpenMPIRBuilder::finalize(class llvm::Function *))
lld-link: error: undefined symbol: public: class llvm::Function * __cdecl llvm::CodeExtractor::extractCodeRegion(class llvm::CodeExtractorAnalysisCache const &, class llvm::SetVector<class llvm::Value *, class llvm::SmallVector<class llvm::Value *, 0>, class llvm::DenseSet<class llvm::Value *, struct llvm::DenseMapInfo<class llvm::Value *, void>>, 0> &, class llvm::SetVector<class llvm::Value *, class llvm::SmallVector<class llvm::Value *, 0>, class llvm::DenseSet<class llvm::Value *, struct llvm::DenseMapInfo<class llvm::Value *, void>>, 0> &)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: void __cdecl llvm::OpenMPIRBuilder::finalize(class llvm::Function *))
lld-link: error: undefined symbol: class llvm::BasicBlock * __cdecl llvm::SplitBlock(class llvm::BasicBlock *, class llvm::ilist_iterator_w_bits<struct llvm::ilist_detail::node_options<class llvm::Instruction, 1, 0, void, 1, class llvm::BasicBlock>, 0, 0>, class llvm::DomTreeUpdater *, class llvm::LoopInfo *, class llvm::MemorySSAUpdater *, class llvm::Twine const &)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: class llvm::Error __cdecl llvm::OpenMPIRBuilder::emitCancelationCheckImpl(class llvm::Value *, enum llvm::omp::Directive))
lld-link: error: undefined symbol: void __cdecl llvm::SplitBlockAndInsertIfThenElse(class llvm::Value *, class llvm::ilist_iterator_w_bits<struct llvm::ilist_detail::node_options<class llvm::Instruction, 1, 0, void, 1, class llvm::BasicBlock>, 0, 0>, class llvm::Instruction **, class llvm::Instruction **, class llvm::MDNode *, class llvm::DomTreeUpdater *, class llvm::LoopInfo *)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl llvm::OpenMPIRBuilder::createCancel(struct llvm::OpenMPIRBuilder::LocationDescription const &, class llvm::Value *, enum llvm::omp::Directive))
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(private: virtual void __cdecl std::_Func_impl_no_alloc<class `public: class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl llvm::OpenMPIRBuilder::createTask(struct llvm::OpenMPIRBuilder::LocationDescription const &, class llvm::IRBuilderBase::InsertPoint, class llvm::function_ref<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint, class llvm::IRBuilderBase::InsertPoint)>, bool, class llvm::Value *, class llvm::Value *, class llvm::SmallVector<struct llvm::OpenMPIRBuilder::DependData, 2>, struct llvm::OpenMPIRBuilder::AffinityData, bool, class llvm::Value *, class llvm::Value *)'::`1'::<lambda_9>, void, class llvm::Function &>::_Do_call(class llvm::Function &))
lld-link: error: undefined symbol: public: void __cdecl llvm::CodeExtractor::findAllocas(class llvm::CodeExtractorAnalysisCache const &, class llvm::SetVector<class llvm::Value *, class llvm::SmallVector<class llvm::Value *, 0>, class llvm::DenseSet<class llvm::Value *, struct llvm::DenseMapInfo<class llvm::Value *, void>>, 0> &, class llvm::SetVector<class llvm::Value *, class llvm::SmallVector<class llvm::Value *, 0>, class llvm::DenseSet<class llvm::Value *, struct llvm::DenseMapInfo<class llvm::Value *, void>>, 0> &, class llvm::BasicBlock *&) const
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl llvm::OpenMPIRBuilder::createParallel(struct llvm::OpenMPIRBuilder::LocationDescription const &, class llvm::IRBuilderBase::InsertPoint, class llvm::function_ref<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint, class llvm::IRBuilderBase::InsertPoint)>, class llvm::function_ref<class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl(class llvm::IRBuilderBase::InsertPoint, class llvm::IRBuilderBase::InsertPoint, class llvm::Value &, class llvm::Value &, class llvm::Value *&)>, class std::function<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint)>, class llvm::Value *, class llvm::Value *, enum llvm::omp::ProcBindKind, bool))
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(private: class llvm::IRBuilderBase::InsertPoint __cdecl llvm::OpenMPIRBuilder::applyWorkshareLoopTarget(class llvm::DebugLoc, class llvm::CanonicalLoopInfo *, class llvm::IRBuilderBase::InsertPoint, enum llvm::omp::WorksharingLoopType, bool))
lld-link: error: undefined symbol: public: void __cdecl llvm::CodeExtractor::findInputsOutputs(class llvm::SetVector<class llvm::Value *, class llvm::SmallVector<class llvm::Value *, 0>, class llvm::DenseSet<class llvm::Value *, struct llvm::DenseMapInfo<class llvm::Value *, void>>, 0> &, class llvm::SetVector<class llvm::Value *, class llvm::SmallVector<class llvm::Value *, 0>, class llvm::DenseSet<class llvm::Value *, struct llvm::DenseMapInfo<class llvm::Value *, void>>, 0> &, class llvm::SetVector<class llvm::Value *, class llvm::SmallVector<class llvm::Value *, 0>, class llvm::DenseSet<class llvm::Value *, struct llvm::DenseMapInfo<class llvm::Value *, void>>, 0> const &, bool) const
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl llvm::OpenMPIRBuilder::createParallel(struct llvm::OpenMPIRBuilder::LocationDescription const &, class llvm::IRBuilderBase::InsertPoint, class llvm::function_ref<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint, class llvm::IRBuilderBase::InsertPoint)>, class llvm::function_ref<class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl(class llvm::IRBuilderBase::InsertPoint, class llvm::IRBuilderBase::InsertPoint, class llvm::Value &, class llvm::Value &, class llvm::Value *&)>, class std::function<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint)>, class llvm::Value *, class llvm::Value *, enum llvm::omp::ProcBindKind, bool))
lld-link: error: undefined symbol: bool __cdecl llvm::MergeBlockIntoPredecessor(class llvm::BasicBlock *, class llvm::DomTreeUpdater *, class llvm::LoopInfo *, class llvm::MemorySSAUpdater *, class llvm::MemoryDependenceResults *, bool, class llvm::DominatorTree *)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(private: class llvm::Expected<class llvm::IRBuilderBase::InsertPoint> __cdecl llvm::OpenMPIRBuilder::EmitOMPInlinedRegion(enum llvm::omp::Directive, class llvm::Instruction *, class llvm::Instruction *, class llvm::function_ref<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint, class llvm::IRBuilderBase::InsertPoint)>, class std::function<class llvm::Error __cdecl(class llvm::IRBuilderBase::InsertPoint)>, bool, bool, bool))
lld-link: error: undefined symbol: void __cdecl llvm::DeleteDeadBlocks(class llvm::ArrayRef<class llvm::BasicBlock *>, class llvm::DomTreeUpdater *, bool)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(void __cdecl removeUnusedBlocksFromParent(class llvm::ArrayRef<class llvm::BasicBlock *>))
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(private: virtual void __cdecl std::_Func_impl_no_alloc<class `private: class llvm::IRBuilderBase::InsertPoint __cdecl llvm::OpenMPIRBuilder::applyWorkshareLoopTarget(class llvm::DebugLoc, class llvm::CanonicalLoopInfo *, class llvm::IRBuilderBase::InsertPoint, enum llvm::omp::WorksharingLoopType, bool)'::`1'::<lambda_34>, void, class llvm::Function &>::_Do_call(class llvm::Function &))
lld-link: error: undefined symbol: class llvm::BasicBlock * __cdecl llvm::CloneBasicBlock(class llvm::BasicBlock const *, class llvm::ValueMap<class llvm::Value const *, class llvm::WeakTrackingVH, struct llvm::ValueMapConfig<class llvm::Value const *, class llvm::sys::SmartMutex<0>>> &, class llvm::Twine const &, class llvm::Function *, struct llvm::ClonedCodeInfo *, bool)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(private: void __cdecl llvm::OpenMPIRBuilder::createIfVersion(class llvm::CanonicalLoopInfo *, class llvm::Value *, class llvm::ValueMap<class llvm::Value const *, class llvm::WeakTrackingVH, struct llvm::ValueMapConfig<class llvm::Value const *, class llvm::sys::SmartMutex<0>>> &, class llvm::LoopAnalysis &, class llvm::LoopInfo &, class llvm::Loop *, class llvm::Twine const &))
lld-link: error: undefined symbol: void __cdecl llvm::remapInstructionsInBlocks(class llvm::ArrayRef<class llvm::BasicBlock *>, class llvm::ValueMap<class llvm::Value const *, class llvm::WeakTrackingVH, struct llvm::ValueMapConfig<class llvm::Value const *, class llvm::sys::SmartMutex<0>>> &)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(private: void __cdecl llvm::OpenMPIRBuilder::createIfVersion(class llvm::CanonicalLoopInfo *, class llvm::Value *, class llvm::ValueMap<class llvm::Value const *, class llvm::WeakTrackingVH, struct llvm::ValueMapConfig<class llvm::Value const *, class llvm::sys::SmartMutex<0>>> &, class llvm::LoopAnalysis &, class llvm::LoopInfo &, class llvm::Loop *, class llvm::Twine const &))
lld-link: error: undefined symbol: struct llvm::TargetTransformInfo::PeelingPreferences __cdecl llvm::gatherPeelingPreferences(class llvm::Loop *, class llvm::ScalarEvolution &, class llvm::TargetTransformInfo const &, class std::optional<bool>, class std::optional<bool>, bool)
>>> referenced by LLVMFrontendOpenMP.lib(OMPIRBuilder.cpp.obj):(public: void __cdecl llvm::OpenMPIRBuilder::unrollLoopPartial(class llvm::DebugLoc, class llvm::CanonicalLoopInfo *, int, class llvm::CanonicalLoopInfo **))
>>> referenced by LLVMScalarOpts.lib(LoopUnrollPass.cpp.obj):(enum llvm::LoopUnrollResult __cdecl tryToUnrollLoop(class llvm::Loop *, class llvm::DominatorTree &, class llvm::LoopInfo *, class llvm::ScalarEvolution &, class llvm::TargetTransformInfo const &, class llvm::AssumptionCache &, class llvm::OptimizationRemarkEmitter &, class llvm::BlockFrequencyInfo *, class llvm::ProfileSummaryInfo *, bool, int, bool, bool, bool, class std::optional<unsigned int>, class std::optional<unsigned int>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<unsigned int>, class llvm::AAResults *))
lld-link: error: undefined symbol: void __cdecl llvm::appendToCompilerUsed(class llvm::Module &, class llvm::ArrayRef<class llvm::GlobalValue *>)
>>> referenced by LLVMFrontendOffloading.lib(Utility.cpp.obj):(struct std::pair<class llvm::GlobalVariable *, class llvm::GlobalVariable *> __cdecl llvm::offloading::getOffloadEntryArray(class llvm::Module &, class llvm::StringRef))
lld-link: error: undefined symbol: class llvm::cl::opt<unsigned int, 0, class llvm::cl::parser<unsigned int>> llvm::SCEVCheapExpansionBudget
>>> referenced by LLVMScalarOpts.lib(LoopUnrollPass.cpp.obj):(struct llvm::TargetTransformInfo::UnrollingPreferences __cdecl llvm::gatherUnrollingPreferences(class llvm::Loop *, class llvm::ScalarEvolution &, class llvm::TargetTransformInfo const &, class llvm::BlockFrequencyInfo *, class llvm::ProfileSummaryInfo *, class llvm::OptimizationRemarkEmitter &, int, class std::optional<unsigned int>, class std::optional<unsigned int>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<unsigned int>))
lld-link: error: undefined symbol: enum llvm::TransformationMode __cdecl llvm::hasUnrollTransformation(class llvm::Loop const *)
>>> referenced by LLVMScalarOpts.lib(LoopUnrollPass.cpp.obj):(struct llvm::TargetTransformInfo::UnrollingPreferences __cdecl llvm::gatherUnrollingPreferences(class llvm::Loop *, class llvm::ScalarEvolution &, class llvm::TargetTransformInfo const &, class llvm::BlockFrequencyInfo *, class llvm::ProfileSummaryInfo *, class llvm::OptimizationRemarkEmitter &, int, class std::optional<unsigned int>, class std::optional<unsigned int>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<unsigned int>))
>>> referenced by LLVMScalarOpts.lib(LoopUnrollPass.cpp.obj):(enum llvm::LoopUnrollResult __cdecl tryToUnrollLoop(class llvm::Loop *, class llvm::DominatorTree &, class llvm::LoopInfo *, class llvm::ScalarEvolution &, class llvm::TargetTransformInfo const &, class llvm::AssumptionCache &, class llvm::OptimizationRemarkEmitter &, class llvm::BlockFrequencyInfo *, class llvm::ProfileSummaryInfo *, bool, int, bool, bool, bool, class std::optional<unsigned int>, class std::optional<unsigned int>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<unsigned int>, class llvm::AAResults *))
>>> referenced by LLVMScalarOpts.lib(LoopUnrollPass.cpp.obj):(enum llvm::LoopUnrollResult __cdecl tryToUnrollLoop(class llvm::Loop *, class llvm::DominatorTree &, class llvm::LoopInfo *, class llvm::ScalarEvolution &, class llvm::TargetTransformInfo const &, class llvm::AssumptionCache &, class llvm::OptimizationRemarkEmitter &, class llvm::BlockFrequencyInfo *, class llvm::ProfileSummaryInfo *, bool, int, bool, bool, bool, class std::optional<unsigned int>, class std::optional<unsigned int>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<unsigned int>, class llvm::AAResults *))
>>> referenced 2 more times
lld-link: error: undefined symbol: bool __cdecl llvm::shouldOptimizeForSize(class llvm::BasicBlock const *, class llvm::ProfileSummaryInfo *, class llvm::BlockFrequencyInfo *, enum llvm::PGSOQueryType)
>>> referenced by LLVMScalarOpts.lib(LoopUnrollPass.cpp.obj):(struct llvm::TargetTransformInfo::UnrollingPreferences __cdecl llvm::gatherUnrollingPreferences(class llvm::Loop *, class llvm::ScalarEvolution &, class llvm::TargetTransformInfo const &, class llvm::BlockFrequencyInfo *, class llvm::ProfileSummaryInfo *, class llvm::OptimizationRemarkEmitter &, int, class std::optional<unsigned int>, class std::optional<unsigned int>, class std::optional<bool>, class std::optional<bool>, class std::optional<bool>, class std::optional<unsigned int>))
lld-link: error: undefined symbol: class llvm::MDNode * __cdecl llvm::getUnrollMetadataForLoop(class llvm::Loop const *, class llvm::StringRef)
>>> referenced by LLVMScalarOpts.lib(LoopUnrollPass.cpp.obj):(public: __cdecl llvm::UnrollPragmaInfo::UnrollPragmaInfo(class llvm::Loop const *))
>>> referenced by LLVMScalarOpts.lib(LoopUnrollPass.cpp.obj):(public: __cdecl llvm::UnrollPragmaInfo::UnrollPragmaInfo(class llvm::Loop const *))
>>> referenced by LLVMScalarOpts.lib(LoopUnrollPass.cpp.obj):(public: __cdecl llvm::UnrollPragmaInfo::UnrollPragmaInfo(class llvm::Loop const *))
>>> referenced 1 more times
lld-link: error: undefined symbol: void __cdecl llvm::computePeelCount(class llvm::Loop *, unsigned int, struct llvm::TargetTransformInfo::PeelingPreferences &, unsigned int, class llvm::DominatorTree &, class llvm::ScalarEvolution &, class llvm::TargetTransformInfo const &, class llvm::AssumptionCache *, unsigned int)
>>> referenced by LLVMScalarOpts.lib(LoopUnrollPass.cpp.obj):(void __cdecl llvm::computeUnrollCount(class llvm::Loop *, class llvm::TargetTransformInfo const &, class llvm::DominatorTree &, class llvm::LoopInfo *, class llvm::AssumptionCache *, class llvm::ScalarEvolution &, class llvm::SmallPtrSetImpl<class llvm::Value const *> const &, class llvm::OptimizationRemarkEmitter *, unsigned int, unsigned int, bool, unsigned int, class llvm::UnrollCostEstimator const &, struct llvm::TargetTransformInfo::UnrollingPreferences &, struct llvm::TargetTransformInfo::PeelingPreferences &))
lld-link: error: too many errors emitted, stopping now (use /errorlimit:0 to see all errors)
```
</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/190087
More information about the cfe-commits
mailing list