[llvm] [polly] Reapply "IR: Remove uselist for constantdata (#137313)" (PR #138961)
Mikael Holmén via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 12 05:54:45 PDT 2025
mikaelholmen wrote:
Hi,
The following starts crashing with this patch:
```opt -passes="gvn" bbi-107843.ll -S -o /dev/null -pass-remarks-output=remarks.yaml```
```
opt: ../include/llvm/IR/Value.h:395: user_iterator llvm::Value::materialized_user_begin(): Assertion `hasUseList()' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: ../../main-github/llvm/build-all/bin/opt -passes=gvn bbi-107843.ll -S -o /dev/null -pass-remarks-output=remarks.yaml
1. Running pass "function(gvn<>)" on module "bbi-107843.ll"
2. Running pass "gvn<>" on function "c"
#0 0x00005582ebc965e6 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (../../main-github/llvm/build-all/bin/opt+0x470b5e6)
#1 0x00005582ebc94065 llvm::sys::RunSignalHandlers() (../../main-github/llvm/build-all/bin/opt+0x4709065)
#2 0x00005582ebc96ed9 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
#3 0x00007f8f38a20d10 __restore_rt (/lib64/libpthread.so.0+0x12d10)
#4 0x00007f8f363c052f raise (/lib64/libc.so.6+0x4e52f)
#5 0x00007f8f36393e65 abort (/lib64/libc.so.6+0x21e65)
#6 0x00007f8f36393d39 _nl_load_domain.cold.0 (/lib64/libc.so.6+0x21d39)
#7 0x00007f8f363b8e86 (/lib64/libc.so.6+0x46e86)
#8 0x00005582ec682428 llvm::GVNPass::AnalyzeLoadAvailability(llvm::LoadInst*, llvm::MemDepResult, llvm::Value*) (../../main-github/llvm/build-all/bin/opt+0x50f7428)
#9 0x00005582ec682937 llvm::GVNPass::AnalyzeLoadAvailability(llvm::LoadInst*, llvm::SmallVector<llvm::NonLocalDepResult, 64u>&, llvm::SmallVector<llvm::gvn::AvailableValueInBlock, 64u>&, llvm::SmallVector<llvm::BasicBlock*, 64u>&) (../../main-github/llvm/build-all/bin/opt+0x50f7937)
#10 0x00005582ec686511 llvm::GVNPass::processNonLocalLoad(llvm::LoadInst*) (../../main-github/llvm/build-all/bin/opt+0x50fb511)
#11 0x00005582ec68a1cc llvm::GVNPass::processInstruction(llvm::Instruction*) (../../main-github/llvm/build-all/bin/opt+0x50ff1cc)
#12 0x00005582ec68b4ab llvm::GVNPass::processBlock(llvm::BasicBlock*) (../../main-github/llvm/build-all/bin/opt+0x51004ab)
#13 0x00005582ec68050d llvm::GVNPass::runImpl(llvm::Function&, llvm::AssumptionCache&, llvm::DominatorTree&, llvm::TargetLibraryInfo const&, llvm::AAResults&, llvm::MemoryDependenceResults*, llvm::LoopInfo&, llvm::OptimizationRemarkEmitter*, llvm::MemorySSA*) (../../main-github/llvm/build-all/bin/opt+0x50f550d)
#14 0x00005582ec67fd2b llvm::GVNPass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (../../main-github/llvm/build-all/bin/opt+0x50f4d2b)
#15 0x00005582ed16f02d llvm::detail::PassModel<llvm::Function, llvm::GVNPass, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) PassBuilderPipelines.cpp:0:0
#16 0x00005582ebeccb75 llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (../../main-github/llvm/build-all/bin/opt+0x4941b75)
#17 0x00005582ed16f4cd llvm::detail::PassModel<llvm::Function, llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) PassBuilderPipelines.cpp:0:0
#18 0x00005582ebed171e llvm::ModuleToFunctionPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (../../main-github/llvm/build-all/bin/opt+0x494671e)
#19 0x00005582ed16b4ed llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) PassBuilderPipelines.cpp:0:0
#20 0x00005582ebecb895 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (../../main-github/llvm/build-all/bin/opt+0x4940895)
#21 0x00005582ed0f7a0c llvm::runPassPipeline(llvm::StringRef, llvm::Module&, llvm::TargetMachine*, llvm::TargetLibraryInfoImpl*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::StringRef, llvm::ArrayRef<llvm::PassPlugin>, llvm::ArrayRef<std::function<void (llvm::PassBuilder&)>>, llvm::opt_tool::OutputKind, llvm::opt_tool::VerifierKind, bool, bool, bool, bool, bool, bool, bool) (../../main-github/llvm/build-all/bin/opt+0x5b6ca0c)
#22 0x00005582ebc58a3e optMain (../../main-github/llvm/build-all/bin/opt+0x46cda3e)
#23 0x00007f8f363ac7e5 __libc_start_main (/lib64/libc.so.6+0x3a7e5)
#24 0x00005582ebc5652e _start (../../main-github/llvm/build-all/bin/opt+0x46cb52e)
Abort (core dumped)
```
[bbi-107843.ll.gz](https://github.com/user-attachments/files/20709346/bbi-107843.ll.gz)
https://github.com/llvm/llvm-project/pull/138961
More information about the llvm-commits
mailing list