Open
Description
With the attached r.ll (in r.zip) and a debug build of opt, I get:
$ opt -o /dev/null -indvars -verify-indvars -verify-scev -verify-scev-strict r.ll
Trip Count for Loop at depth 2 containing: %bb4<header>,%bb6<latch><exiting>
Changed!
Old: 1
New: ({-1,+,-2}<%bb1> + ({1,+,2}<%bb1> umax {2,+,2}<%bb1>))
Delta: ((-1 * ({1,+,2}<%bb1> umax {2,+,2}<%bb1>))<nsw> + {2,+,2}<%bb1>)
Stack dump:
0. Program arguments: /home/jayfoad2/llvm-debug/bin/opt -o /dev/null -indvars -verify-indvars -verify-scev -verify-scev-strict r.ll
1. Running pass 'Function Pass Manager' on module 'r.ll'.
2. Running pass 'Loop Pass Manager' on function '@f'
#0 0x0000000006491669 llvm::sys::PrintStackTrace(llvm::raw_ostream&) /home/jayfoad2/git/llvm-project/llvm/lib/Support/Unix/Signals.inc:564:11
#1 0x0000000006491819 PrintStackTraceSignalHandler(void*) /home/jayfoad2/git/llvm-project/llvm/lib/Support/Unix/Signals.inc:625:1
#2 0x000000000648ff06 llvm::sys::RunSignalHandlers() /home/jayfoad2/git/llvm-project/llvm/lib/Support/Signals.cpp:67:5
#3 0x0000000006491fbb SignalHandler(int) /home/jayfoad2/git/llvm-project/llvm/lib/Support/Unix/Signals.inc:406:1
#4 0x00007f30f87a2890 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x12890)
#5 0x00007f30f724be97 raise /build/glibc-OTsEL5/glibc-2.27/signal/../sysdeps/unix/sysv/linux/raise.c:51:0
#6 0x00007f30f724d801 abort /build/glibc-OTsEL5/glibc-2.27/stdlib/abort.c:81:0
#7 0x00000000050baa7d llvm::ScalarEvolution::verify() const /home/jayfoad2/git/llvm-project/llvm/lib/Analysis/ScalarEvolution.cpp:12005:3
#8 0x00000000050bb1be llvm::ScalarEvolutionWrapperPass::verifyAnalysis() const /home/jayfoad2/git/llvm-project/llvm/lib/Analysis/ScalarEvolution.cpp:12122:1
#9 0x000000000592c1ed llvm::PMDataManager::verifyPreservedAnalysis(llvm::Pass*) /home/jayfoad2/git/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:911:11
#10 0x0000000004f7a197 llvm::LPPassManager::runOnFunction(llvm::Function&) /home/jayfoad2/git/llvm-project/llvm/lib/Analysis/LoopPass.cpp:241:9
#11 0x000000000592ecdc llvm::FPPassManager::runOnFunction(llvm::Function&) /home/jayfoad2/git/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1482:23
#12 0x000000000592f0f5 llvm::FPPassManager::runOnModule(llvm::Module&) /home/jayfoad2/git/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1518:16
#13 0x000000000592f874 (anonymous namespace)::MPPassManager::runOnModule(llvm::Module&) /home/jayfoad2/git/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1583:23
#14 0x000000000592f388 llvm::legacy::PassManagerImpl::run(llvm::Module&) /home/jayfoad2/git/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1695:16
#15 0x000000000592fe01 llvm::legacy::PassManager::run(llvm::Module&) /home/jayfoad2/git/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1726:3
#16 0x00000000034350a7 main /home/jayfoad2/git/llvm-project/llvm/tools/opt/opt.cpp:941:3
#17 0x00007f30f722eb97 __libc_start_main /build/glibc-OTsEL5/glibc-2.27/csu/../csu/libc-start.c:344:0
#18 0x00000000033ff02a _start (/home/jayfoad2/llvm-debug/bin/opt+0x33ff02a)
Aborted (core dumped)