[llvm] [IR] Reject unhandled assume bundles and seperate them from normal attributes (PR #197007)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Sat Jun 13 19:57:15 PDT 2026


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `clang-with-lto-ubuntu` running on `as-worker-91` while building `llvm` at step 18 "build-stage3-compiler".

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

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

```
Step 18 (build-stage3-compiler) failure: build (failure)
...
72.965 [5874/72/1121] Building CXX object lib/Transforms/Utils/CMakeFiles/LLVMTransformUtils.dir/SanitizerStats.cpp.o
73.015 [5873/72/1122] Building CXX object lib/Transforms/Utils/CMakeFiles/LLVMTransformUtils.dir/MemoryOpRemark.cpp.o
73.068 [5872/72/1123] Building CXX object lib/CodeGen/CMakeFiles/LLVMCodeGen.dir/cmake_pch.hxx.pch
73.143 [5871/72/1124] Building CXX object lib/Transforms/Utils/CMakeFiles/LLVMTransformUtils.dir/TriggerCrashPass.cpp.o
73.151 [5870/72/1125] Building CXX object lib/Transforms/Utils/CMakeFiles/LLVMTransformUtils.dir/ProfileVerify.cpp.o
73.230 [5869/72/1126] Building CXX object lib/Transforms/Utils/CMakeFiles/LLVMTransformUtils.dir/RelLookupTableConverter.cpp.o
73.273 [5868/72/1127] Building CXX object lib/Transforms/Utils/CMakeFiles/LLVMTransformUtils.dir/SizeOpts.cpp.o
73.303 [5867/72/1128] Building CXX object lib/Transforms/Utils/CMakeFiles/LLVMTransformUtils.dir/StripNonLineTableDebugInfo.cpp.o
73.332 [5866/72/1129] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/AutoUpgrade.cpp.o
73.427 [5865/72/1130] Building CXX object lib/Bitcode/Writer/CMakeFiles/LLVMBitWriter.dir/ValueEnumerator.cpp.o
FAILED: lib/Bitcode/Writer/CMakeFiles/LLVMBitWriter.dir/ValueEnumerator.cpp.o 
/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang++ -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/build/stage3/lib/Bitcode/Writer -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/lib/Bitcode/Writer -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/build/stage3/include -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Xclang -fno-pch-timestamp -flto -O3 -DNDEBUG -fno-exceptions -funwind-tables -fno-rtti -std=c++17 -Winvalid-pch -Xclang -include-pch -Xclang /home/buildbot/as-worker-91/clang-with-lto-ubuntu/build/stage3/lib/IR/CMakeFiles/LLVMCore.dir/cmake_pch.hxx.pch -Xclang -include -Xclang /home/buildbot/as-worker-91/clang-with-lto-ubuntu/build/stage3/lib/IR/CMakeFiles/LLVMCore.dir/cmake_pch.hxx -MD -MT lib/Bitcode/Writer/CMakeFiles/LLVMBitWriter.dir/ValueEnumerator.cpp.o -MF lib/Bitcode/Writer/CMakeFiles/LLVMBitWriter.dir/ValueEnumerator.cpp.o.d -o lib/Bitcode/Writer/CMakeFiles/LLVMBitWriter.dir/ValueEnumerator.cpp.o -c /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
clang++: /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/lib/Analysis/ValueTracking.cpp:846: auto isKnownNonZeroFromAssume(const Value *, const SimplifyQuery &)::(lambda)::operator()() const: Assertion `getAssumeNonNullInfo(OBU).Ptr == V' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and dumped files.
Stack dump:
0.	Program arguments: /home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang++ -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/build/stage3/lib/Bitcode/Writer -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/lib/Bitcode/Writer -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/build/stage3/include -I/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Xclang -fno-pch-timestamp -flto -O3 -DNDEBUG -fno-exceptions -funwind-tables -fno-rtti -std=c++17 -Winvalid-pch -Xclang -include-pch -Xclang /home/buildbot/as-worker-91/clang-with-lto-ubuntu/build/stage3/lib/IR/CMakeFiles/LLVMCore.dir/cmake_pch.hxx.pch -Xclang -include -Xclang /home/buildbot/as-worker-91/clang-with-lto-ubuntu/build/stage3/lib/IR/CMakeFiles/LLVMCore.dir/cmake_pch.hxx -MD -MT lib/Bitcode/Writer/CMakeFiles/LLVMBitWriter.dir/ValueEnumerator.cpp.o -MF lib/Bitcode/Writer/CMakeFiles/LLVMBitWriter.dir/ValueEnumerator.cpp.o.d -o lib/Bitcode/Writer/CMakeFiles/LLVMBitWriter.dir/ValueEnumerator.cpp.o -c /home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
1.	<eof> parser at end of file
2.	Optimizer
3.	Running pass "require<globals-aa>,function(invalidate<aa>),require<profile-summary>,cgscc(devirt<4>(inline,function-attrs<skip-non-recursive-function-attrs>,argpromotion,openmp-opt-cgscc,function<eager-inv;no-rerun>(sroa<modify-cfg>,early-cse<memssa>,speculative-execution<only-if-divergent-target>,jump-threading,correlated-propagation,jump-table-to-switch,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-arithmetic;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>,aggressive-instcombine,libcalls-shrinkwrap,tailcallelim,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-arithmetic;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,reassociate,constraint-elimination,loop-mssa(loop-instsimplify,loop-simplifycfg,licm<no-allowspeculation>,loop-rotate<header-duplication;prepare-for-lto;no-check-exit-count>,licm<allowspeculation>,simple-loop-unswitch<nontrivial;trivial>),simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-arithmetic;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>,loop(loop-idiom,indvars,extra-simple-loop-unswitch-passes,loop-deletion,loop-unroll-full),sroa<modify-cfg>,vector-combine,mldst-motion<no-split-footer-bb>,gvn<>,sccp,bdce,instcombine<max-iterations=1;no-verify-fixpoint>,jump-threading,correlated-propagation,adce,memcpyopt,dse,move-auto-init,loop-mssa(licm<allowspeculation>),coro-elide,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;switch-to-arithmetic;no-switch-to-lookup;keep-loops;hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>),function-attrs,function(require<should-not-run-function-passes>),coro-split,coro-annotation-elide)),function(invalidate<should-not-run-function-passes>),cgscc(devirt<4>())" on module "/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp"
4.	Running pass "cgscc(devirt<4>(inline,function-attrs<skip-non-recursive-function-attrs>,argpromotion,openmp-opt-cgscc,function<eager-inv;no-rerun>(sroa<modify-cfg>,early-cse<memssa>,speculative-execution<only-if-divergent-target>,jump-threading,correlated-propagation,jump-table-to-switch,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-arithmetic;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>,aggressive-instcombine,libcalls-shrinkwrap,tailcallelim,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-arithmetic;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,reassociate,constraint-elimination,loop-mssa(loop-instsimplify,loop-simplifycfg,licm<no-allowspeculation>,loop-rotate<header-duplication;prepare-for-lto;no-check-exit-count>,licm<allowspeculation>,simple-loop-unswitch<nontrivial;trivial>),simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-arithmetic;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>,loop(loop-idiom,indvars,extra-simple-loop-unswitch-passes,loop-deletion,loop-unroll-full),sroa<modify-cfg>,vector-combine,mldst-motion<no-split-footer-bb>,gvn<>,sccp,bdce,instcombine<max-iterations=1;no-verify-fixpoint>,jump-threading,correlated-propagation,adce,memcpyopt,dse,move-auto-init,loop-mssa(licm<allowspeculation>),coro-elide,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;switch-to-arithmetic;no-switch-to-lookup;keep-loops;hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>),function-attrs,function(require<should-not-run-function-passes>),coro-split,coro-annotation-elide))" on module "/home/buildbot/as-worker-91/clang-with-lto-ubuntu/llvm-project/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp"
5.	Running pass "instcombine<max-iterations=1;no-verify-fixpoint>" on function "_ZN4llvm15ValueEnumeratorC2ERKNS_6ModuleEb"
 #0 0x0000558d9b99192b llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x3cba92b)
 #1 0x0000558d9b98e8d1 llvm::sys::RunSignalHandlers() (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x3cb78d1)
 #2 0x0000558d9b99051c llvm::sys::CleanupOnSignal(unsigned long) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x3cb951c)
 #3 0x0000558d9b8ef7a6 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #4 0x00007f32c49da520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #5 0x00007f32c4a2e9fc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x969fc)
 #6 0x00007f32c49da476 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x42476)
 #7 0x00007f32c49c07f3 abort (/lib/x86_64-linux-gnu/libc.so.6+0x287f3)
 #8 0x00007f32c49c071b (/lib/x86_64-linux-gnu/libc.so.6+0x2871b)
 #9 0x00007f32c49d1e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
#10 0x0000558d9ab714d2 isKnownNonZero(llvm::Value const*, llvm::APInt const&, llvm::SimplifyQuery const&, unsigned int) ValueTracking.cpp:0:0
#11 0x0000558d9ab96223 isKnownNonZeroFromOperator(llvm::Operator const*, llvm::APInt const&, llvm::SimplifyQuery const&, unsigned int)::$_0::operator()(llvm::Use const&) const ValueTracking.cpp:0:0
#12 0x0000558d9ab960b5 llvm::Use const* std::find_if_not<llvm::Use const*, isKnownNonZeroFromOperator(llvm::Operator const*, llvm::APInt const&, llvm::SimplifyQuery const&, unsigned int)::$_0>(llvm::Use const*, llvm::Use const*, isKnownNonZeroFromOperator(llvm::Operator const*, llvm::APInt const&, llvm::SimplifyQuery const&, unsigned int)::$_0) ValueTracking.cpp:0:0
#13 0x0000558d9ab702d9 isKnownNonZero(llvm::Value const*, llvm::APInt const&, llvm::SimplifyQuery const&, unsigned int) ValueTracking.cpp:0:0
#14 0x0000558d9ab693e1 llvm::isKnownNonZero(llvm::Value const*, llvm::SimplifyQuery const&, unsigned int) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x2e923e1)
#15 0x0000558d9b5977a4 llvm::InstCombinerImpl::visitCallInst(llvm::CallInst&) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x38c07a4)
#16 0x0000558d9b53f3d6 llvm::InstCombinerImpl::run() (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x38683d6)
#17 0x0000558d9b542884 combineInstructionsOverFunction(llvm::Function&, llvm::InstructionWorklist&, llvm::AAResults*, llvm::AssumptionCache&, llvm::TargetLibraryInfo&, llvm::TargetTransformInfo&, llvm::DominatorTree&, llvm::OptimizationRemarkEmitter&, llvm::BlockFrequencyInfo*, llvm::BranchProbabilityInfo*, llvm::ProfileSummaryInfo*, llvm::InstCombineOptions const&) InstructionCombining.cpp:0:0
#18 0x0000558d9b542149 llvm::InstCombinePass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x386b149)
#19 0x0000558d9b378e89 llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x36a1e89)
#20 0x0000558d9a94e25c llvm::CGSCCToFunctionPassAdaptor::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x2c7725c)
#21 0x0000558d9a949ea3 llvm::PassManager<llvm::LazyCallGraph::SCC, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&>::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x2c72ea3)
#22 0x0000558d9a94cc04 llvm::DevirtSCCRepeatedPass::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x2c75c04)
#23 0x0000558d9a94b447 llvm::ModuleToPostOrderCGSCCPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x2c74447)
#24 0x0000558d9b378029 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x36a1029)
#25 0x0000558d9cf89bcf llvm::ModuleInlinerWrapperPass::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x52b2bcf)
#26 0x0000558d9b378029 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/buildbot/as-worker-91/clang-with-lto-ubuntu/install/stage2/bin/clang+++0x36a1029)
#27 0x0000558d9bd2e1bb (anonymous namespace)::EmitAssemblyHelper::RunOptimizationPipeline(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>&, std::unique_ptr<llvm::ToolOutputFile, std::default_delete<llvm::ToolOutputFile>>&, clang::BackendConsumer*) BackendUtil.cpp:0:0

```

</details>

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


More information about the llvm-commits mailing list