-
Notifications
You must be signed in to change notification settings - Fork 14.6k
Closed
Description
define void @aliveMutateGeneratedTmpFunction.2() {
enter:
%valptr = alloca i32, align 4
store i32 0, ptr %valptr, align 4
%barr = call ptr @llvm.launder.invariant.group.p0(ptr %valptr)
ret void
}
; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(inaccessiblemem: readwrite)
declare ptr @llvm.launder.invariant.group.p0(ptr) #0
attributes #0 = { nocallback nofree nosync nounwind speculatable willreturn memory(inaccessiblemem: readwrite) }
regehr@john-home:~/out$ /home/regehr/llvm-project/for-alive/bin/opt -passes=sroa reduced.ll
WARNING: You're attempting to print out a bitcode file.
This is inadvisable as it may cause display problems. If
you REALLY want to taste LLVM bitcode first-hand, you
can force output with the `-f' option.
opt: /home/regehr/llvm-project/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp:668: void {anonymous}::PromoteMem2Reg::run(): Assertion `isAllocaPromotable(AI) && "Cannot promote non-promotable alloca!"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: /home/regehr/llvm-project/for-alive/bin/opt -passes=sroa reduced.ll
#0 0x00007fe5253fe950 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMSupport.so.18git+0x1fe950)
#1 0x00007fe5253fb95f llvm::sys::RunSignalHandlers() (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMSupport.so.18git+0x1fb95f)
#2 0x00007fe5253fbab5 SignalHandler(int) Signals.cpp:0:0
#3 0x00007fe524a42520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
#4 0x00007fe524a969fc __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
#5 0x00007fe524a969fc __pthread_kill_internal ./nptl/pthread_kill.c:78:10
#6 0x00007fe524a969fc pthread_kill ./nptl/pthread_kill.c:89:10
#7 0x00007fe524a42476 gsignal ./signal/../sysdeps/posix/raise.c:27:6
#8 0x00007fe524a287f3 abort ./stdlib/abort.c:81:7
#9 0x00007fe524a2871b _nl_load_domain ./intl/loadmsgcat.c:1177:9
#10 0x00007fe524a39e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
#11 0x00007fe526625b3b (anonymous namespace)::PromoteMem2Reg::run() PromoteMemoryToRegister.cpp:0:0
#12 0x00007fe526625faf llvm::PromoteMemToReg(llvm::ArrayRef<llvm::AllocaInst*>, llvm::DominatorTree&, llvm::AssumptionCache*) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMTransformUtils.so.18git+0x225faf)
#13 0x00007fe526d3f7cd llvm::SROAPass::promoteAllocas(llvm::Function&) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMScalarOpts.so.18git+0x33f7cd)
#14 0x00007fe526d5e275 llvm::SROAPass::runImpl(llvm::Function&, llvm::DomTreeUpdater&, llvm::AssumptionCache&) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMScalarOpts.so.18git+0x35e275)
#15 0x00007fe526d5f310 llvm::SROAPass::runImpl(llvm::Function&, llvm::DominatorTree&, llvm::AssumptionCache&) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMScalarOpts.so.18git+0x35f310)
#16 0x00007fe526d5f6d9 llvm::SROAPass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMScalarOpts.so.18git+0x35f6d9)
#17 0x00007fe5286b7d86 llvm::detail::PassModel<llvm::Function, llvm::SROAPass, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMPasses.so.18git+0xb7d86)
#18 0x00007fe52cb83b01 llvm::detail::PassModel<llvm::Function, llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMAMDGPUCodeGen.so.18git+0x383b01)
#19 0x00007fe525925877 llvm::ModuleToFunctionPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMCore.so.18git+0x325877)
#20 0x00007fe52cb63296 llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMAMDGPUCodeGen.so.18git+0x363296)
#21 0x00007fe5259238f1 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/home/regehr/llvm-project/for-alive/bin/../lib/libLLVMCore.so.18git+0x3238f1)
#22 0x0000555889e2f034 llvm::runPassPipeline(llvm::StringRef, llvm::Module&, llvm::TargetMachine*, llvm::TargetLibraryInfoImpl*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::StringRef, llvm::ArrayRef<llvm::PassPlugin>, llvm::opt_tool::OutputKind, llvm::opt_tool::VerifierKind, bool, bool, bool, bool, bool, bool, bool) (/home/regehr/llvm-project/for-alive/bin/opt+0x31034)
#23 0x0000555889e1d09c main (/home/regehr/llvm-project/for-alive/bin/opt+0x1f09c)
#24 0x00007fe524a29d90 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#25 0x00007fe524a29e40 call_init ./csu/../csu/libc-start.c:128:20
#26 0x00007fe524a29e40 __libc_start_main ./csu/../csu/libc-start.c:379:5
#27 0x0000555889e20f95 _start (/home/regehr/llvm-project/for-alive/bin/opt+0x22f95)
Aborted (core dumped)
regehr@john-home:~/out$