[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
Mon Jun 8 09:22:55 PDT 2026


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `bolt-x86_64-ubuntu-clang` running on `bolt-worker` while building `llvm` at step 6 "test-build-clang-bolt-stage2-clang-bolt".

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

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

```
Step 6 (test-build-clang-bolt-stage2-clang-bolt) failure: test (failure)
...
2.593 [131/18/1747] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/condition_variable_destructor.cpp.o
2.636 [130/18/1748] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/valarray.cpp.o
2.647 [129/18/1749] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/memory.cpp.o
2.811 [128/18/1750] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/mutex_destructor.cpp.o
2.887 [127/18/1751] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/shared_mutex.cpp.o
2.909 [126/18/1752] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/system_error.cpp.o
2.946 [125/18/1753] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/vector.cpp.o
3.017 [124/18/1754] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/mutex.cpp.o
3.065 [123/18/1755] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/filesystem/path.cpp.o
3.092 [122/18/1756] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/charconv.cpp.o
FAILED: libcxx/src/CMakeFiles/cxx_static.dir/charconv.cpp.o 
/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/./bin/clang++ --target=x86_64-unknown-linux-gnu -DLIBCXX_BUILDING_LIBCXXABI -DLIBC_NAMESPACE=__llvm_libc_common_utils -D_LIBCPP_AVAILABILITY_MINIMUM_HEADER_VERSION=2 -D_LIBCPP_BUILDING_LIBRARY -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS="" -D_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER -D_LIBCPP_LINK_PTHREAD_LIB -D_LIBCPP_LINK_RT_LIB -D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/libcxx/src -I/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/runtimes/runtimes-bins/compiler-rt/lib/fuzzer/libcxx_fuzzer_x86_64/build/include/c++/v1 -I/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/libcxxabi/include -I/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/cmake/Modules/../../libc -m64 -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -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 -O3 -DNDEBUG -fPIC -std=c++26 -faligned-allocation -nostdinc++ -fvisibility-inlines-hidden -fvisibility=hidden -fsized-deallocation -Wall -Wextra -Wnewline-eof -Wshadow -Wwrite-strings -Wno-unused-parameter -Wno-long-long -Werror=return-type -Wextra-semi -Wundef -Wunused-template -Wformat-nonliteral -Wzero-length-array -Wdeprecated-redundant-constexpr-static-def -Wno-nullability-completeness -Wmissing-prototypes -Wno-user-defined-literals -Wno-covered-switch-default -Wno-suggest-override -Wno-error -fno-exceptions -fdebug-prefix-map=/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/runtimes/runtimes-bins/compiler-rt/lib/fuzzer/libcxx_fuzzer_x86_64/build/include/c++/v1=/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/libcxx/include -MD -MT libcxx/src/CMakeFiles/cxx_static.dir/charconv.cpp.o -MF libcxx/src/CMakeFiles/cxx_static.dir/charconv.cpp.o.d -o libcxx/src/CMakeFiles/cxx_static.dir/charconv.cpp.o -c /home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/libcxx/src/charconv.cpp
clang++: /home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/llvm/lib/Analysis/ValueTracking.cpp:1093: void llvm::computeKnownBitsFromContext(const llvm::Value*, llvm::KnownBits&, const llvm::SimplifyQuery&, unsigned int): Assertion `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/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/./bin/clang++ --target=x86_64-unknown-linux-gnu -DLIBCXX_BUILDING_LIBCXXABI -DLIBC_NAMESPACE=__llvm_libc_common_utils -D_LIBCPP_AVAILABILITY_MINIMUM_HEADER_VERSION=2 -D_LIBCPP_BUILDING_LIBRARY -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS= -D_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER -D_LIBCPP_LINK_PTHREAD_LIB -D_LIBCPP_LINK_RT_LIB -D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/libcxx/src -I/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/runtimes/runtimes-bins/compiler-rt/lib/fuzzer/libcxx_fuzzer_x86_64/build/include/c++/v1 -I/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/libcxxabi/include -I/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/cmake/Modules/../../libc -m64 -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -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 -O3 -DNDEBUG -fPIC -std=c++26 -faligned-allocation -nostdinc++ -fvisibility-inlines-hidden -fvisibility=hidden -fsized-deallocation -Wall -Wextra -Wnewline-eof -Wshadow -Wwrite-strings -Wno-unused-parameter -Wno-long-long -Werror=return-type -Wextra-semi -Wundef -Wunused-template -Wformat-nonliteral -Wzero-length-array -Wdeprecated-redundant-constexpr-static-def -Wno-nullability-completeness -Wmissing-prototypes -Wno-user-defined-literals -Wno-covered-switch-default -Wno-suggest-override -Wno-error -fno-exceptions -fdebug-prefix-map=/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/runtimes/runtimes-bins/compiler-rt/lib/fuzzer/libcxx_fuzzer_x86_64/build/include/c++/v1=/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/libcxx/include -MD -MT libcxx/src/CMakeFiles/cxx_static.dir/charconv.cpp.o -MF libcxx/src/CMakeFiles/cxx_static.dir/charconv.cpp.o.d -o libcxx/src/CMakeFiles/cxx_static.dir/charconv.cpp.o -c /home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/libcxx/src/charconv.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;no-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/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/libcxx/src/charconv.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;no-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/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/llvm-project/libcxx/src/charconv.cpp"
5.	Running pass "instcombine<max-iterations=1;no-verify-fixpoint>" on function "_ZNSt8__Fuzzer36_Floating_to_chars_general_precisionB9nqn230000IdEENS_15to_chars_resultEPcS2_T_i"
 #0 0x000057ac64ec3590 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/./bin/clang+++0x46c3590)
 #1 0x000057ac64ec015c llvm::sys::RunSignalHandlers() (/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/./bin/clang+++0x46c015c)
 #2 0x000057ac64ec09b2 llvm::sys::CleanupOnSignal(unsigned long) (/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/./bin/clang+++0x46c09b2)
 #3 0x000057ac64e009e8 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #4 0x0000720ffc242520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #5 0x0000720ffc2969fc __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
 #6 0x0000720ffc2969fc __pthread_kill_internal ./nptl/pthread_kill.c:78:10
 #7 0x0000720ffc2969fc pthread_kill ./nptl/pthread_kill.c:89:10
 #8 0x0000720ffc242476 gsignal ./signal/../sysdeps/posix/raise.c:27:6
 #9 0x0000720ffc2287f3 abort ./stdlib/abort.c:81:7
#10 0x0000720ffc22871b _nl_load_domain ./intl/loadmsgcat.c:1177:9
#11 0x0000720ffc239e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
#12 0x000057ac6af810be llvm::computeKnownBitsFromContext(llvm::Value const*, llvm::KnownBits&, llvm::SimplifyQuery const&, unsigned int) (.cold.0) bolt-pseudo.o:0:0
#13 0x000057ac6a00394d computeKnownBits(llvm::Value const*, llvm::APInt const&, llvm::KnownBits&, llvm::SimplifyQuery const&, unsigned int) ValueTracking.cpp:0:0
#14 0x000057ac6a003467 llvm::computeKnownBits(llvm::Value const*, llvm::KnownBits&, llvm::SimplifyQuery const&, unsigned int) (/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/./bin/clang+++0x9803467)
#15 0x000057ac6a13d4c1 llvm::InstCombinerImpl::SimplifyMultipleUseDemandedBits(llvm::Instruction*, llvm::APInt const&, llvm::KnownBits&, llvm::SimplifyQuery const&, unsigned int) InstCombineSimplifyDemanded.cpp:0:0
#16 0x000057ac6a13e9b6 llvm::InstCombinerImpl::SimplifyDemandedBits(llvm::Instruction*, unsigned int, llvm::APInt const&, llvm::KnownBits&, llvm::SimplifyQuery const&, unsigned int) InstCombineSimplifyDemanded.cpp:0:0
#17 0x000057ac6a143bf0 llvm::InstCombinerImpl::foldICmpUsingKnownBits(llvm::ICmpInst&) InstCombineCompares.cpp:0:0
#18 0x000057ac6a2190d4 llvm::InstCombinerImpl::visitICmpInst(llvm::ICmpInst&) InstCombineCompares.cpp:0:0
#19 0x000057ac6a01aed8 llvm::InstCombinerImpl::run() InstructionCombining.cpp:0:0
#20 0x000057ac6a159131 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
#21 0x000057ac6a04f26c llvm::InstCombinePass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/./bin/clang+++0x984f26c)
#22 0x000057ac6a04ed66 llvm::detail::PassModel<llvm::Function, llvm::InstCombinePass, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) BackendUtil.cpp:0:0
#23 0x000057ac6a04c235 llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/./bin/clang+++0x984c235)
#24 0x000057ac6a04bdf8 llvm::detail::PassModel<llvm::Function, llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) X86CodeGenPassBuilder.cpp:0:0
#25 0x000057ac6a3ab047 llvm::CGSCCToFunctionPassAdaptor::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) (/home/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/./bin/clang+++0x9bab047)
#26 0x000057ac6a3aac66 llvm::detail::PassModel<llvm::LazyCallGraph::SCC, llvm::CGSCCToFunctionPassAdaptor, 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&) X86CodeGenPassBuilder.cpp:0:0
#27 0x000057ac6a3acec1 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/worker/bolt-worker2/bolt-x86_64-ubuntu-clang/build/./bin/clang+++0x9bacec1)

```

</details>

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


More information about the llvm-commits mailing list