Function: prepare: 12 pointers, 1 call sites NoAlias: i8* %add.ptr2, i8* %i.027 NoAlias: i8* %add.ptr1, i8* %p NoAlias: i8* %add.ptr1, i8* %i.027 NoAlias: i8* %add.ptr1, i8* %add.ptr2 NoAlias: i8* %add.ptr1, i8* %i.0.lcssa opt: llvm-project/llvm/lib/Analysis/ScalarEvolution.cpp:706: int CompareSCEVComplexity(llvm::EquivalenceClasses&, llvm::EquivalenceClasses&, const llvm::LoopInfo*, const llvm::SCEV*, const llvm::SCEV*, llvm::DominatorTree&, unsigned int): Assertion `DT.dominates(RHead, LHead) && "No dominance between recurrences used by one SCEV?"' failed. Stack dump: 0. Program arguments: ./bin/opt -disable-output -basicaa -scev-aa -aa-eval -print-no-aliases ./ptr_test.O1.ll 1. Running pass 'Function Pass Manager' on module './ptr_test.O1.ll'. 2. Running pass 'Exhaustive Alias Analysis Precision Evaluator' on function '@prepare' #0 0x000055b5e64427eb llvm::sys::PrintStackTrace(llvm::raw_ostream&) llvm-project/llvm/lib/Support/Unix/Signals.inc:494:0 #1 0x000055b5e644287e PrintStackTraceSignalHandler(void*) llvm-project/llvm/lib/Support/Unix/Signals.inc:558:0 #2 0x000055b5e644087e llvm::sys::RunSignalHandlers() llvm-project/llvm/lib/Support/Signals.cpp:68:0 #3 0x000055b5e644223e SignalHandler(int) llvm-project/llvm/lib/Support/Unix/Signals.inc:357:0 #4 0x00007fba98ae1890 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x12890) #5 0x00007fba97bd9e97 raise /build/glibc-OTsEL5/glibc-2.27/signal/../sysdeps/unix/sysv/linux/raise.c:51:0 #6 0x00007fba97bdb801 abort /build/glibc-OTsEL5/glibc-2.27/stdlib/abort.c:81:0 #7 0x00007fba97bcb39a __assert_fail_base /build/glibc-OTsEL5/glibc-2.27/assert/assert.c:89:0 #8 0x00007fba97bcb412 (/lib/x86_64-linux-gnu/libc.so.6+0x30412) #9 0x000055b5e5358b23 CompareSCEVComplexity(llvm::EquivalenceClasses&, llvm::EquivalenceClasses&, llvm::LoopInfo const*, llvm::SCEV const*, llvm::SCEV const*, llvm::DominatorTree&, unsigned int) llvm-project/llvm/lib/Analysis/ScalarEvolution.cpp:705:0 #10 0x000055b5e535910b GroupByComplexity(llvm::SmallVectorImpl&, llvm::LoopInfo*, llvm::DominatorTree&) llvm-project/llvm/lib/Analysis/ScalarEvolution.cpp:808:0 #11 0x000055b5e535f7a1 llvm::ScalarEvolution::getAddExpr(llvm::SmallVectorImpl&, llvm::SCEV::NoWrapFlags, unsigned int) llvm-project/llvm/lib/Analysis/ScalarEvolution.cpp:2419:0 #12 0x000055b5e519add5 llvm::ScalarEvolution::getAddExpr(llvm::SCEV const*, llvm::SCEV const*, llvm::SCEV::NoWrapFlags, unsigned int) llvm-project/llvm/include/llvm/Analysis/ScalarEvolution.h:551:0 #13 0x000055b5e536866e llvm::ScalarEvolution::getMinusSCEV(llvm::SCEV const*, llvm::SCEV const*, llvm::SCEV::NoWrapFlags, unsigned int) llvm-project/llvm/lib/Analysis/ScalarEvolution.cpp:4037:0 #14 0x000055b5e53e3845 llvm::SCEVAAResult::alias(llvm::MemoryLocation const&, llvm::MemoryLocation const&, llvm::AAQueryInfo&) llvm-project/llvm/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp:53:0 #15 0x000055b5e509b68a llvm::AAResults::Model::alias(llvm::MemoryLocation const&, llvm::MemoryLocation const&, llvm::AAQueryInfo&) llvm-project/llvm/include/llvm/Analysis/AliasAnalysis.h:901:0 #16 0x000055b5e50907d2 llvm::AAResults::alias(llvm::MemoryLocation const&, llvm::MemoryLocation const&, llvm::AAQueryInfo&) llvm-project/llvm/lib/Analysis/AliasAnalysis.cpp:113:0 #17 0x000055b5e50b929d llvm::AAResultBase::AAResultsProxy::alias(llvm::MemoryLocation const&, llvm::MemoryLocation const&, llvm::AAQueryInfo&) llvm-project/llvm/include/llvm/Analysis/AliasAnalysis.h:976:0 #18 0x000055b5e50b5f77 llvm::BasicAAResult::aliasCheck(llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes, llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes, llvm::AAQueryInfo&, llvm::Value const*, llvm::Value const*) llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:1877:0 #19 0x000055b5e50b5120 llvm::BasicAAResult::aliasPHI(llvm::PHINode const*, llvm::LocationSize, llvm::AAMDNodes const&, llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes const&, llvm::Value const*, llvm::AAQueryInfo&) llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:1688:0 #20 0x000055b5e50b5b7b llvm::BasicAAResult::aliasCheck(llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes, llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes, llvm::AAQueryInfo&, llvm::Value const*, llvm::Value const*) llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:1839:0 #21 0x000055b5e50b5120 llvm::BasicAAResult::aliasPHI(llvm::PHINode const*, llvm::LocationSize, llvm::AAMDNodes const&, llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes const&, llvm::Value const*, llvm::AAQueryInfo&) llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:1688:0 #22 0x000055b5e50b5b7b llvm::BasicAAResult::aliasCheck(llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes, llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes, llvm::AAQueryInfo&, llvm::Value const*, llvm::Value const*) llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:1839:0 #23 0x000055b5e50b3d98 llvm::BasicAAResult::aliasGEP(llvm::GEPOperator const*, llvm::LocationSize, llvm::AAMDNodes const&, llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes const&, llvm::Value const*, llvm::Value const*, llvm::AAQueryInfo&) llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:1393:0 #24 0x000055b5e50b59cf llvm::BasicAAResult::aliasCheck(llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes, llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes, llvm::AAQueryInfo&, llvm::Value const*, llvm::Value const*) llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:1822:0 #25 0x000055b5e50b5120 llvm::BasicAAResult::aliasPHI(llvm::PHINode const*, llvm::LocationSize, llvm::AAMDNodes const&, llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes const&, llvm::Value const*, llvm::AAQueryInfo&) llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:1688:0 #26 0x000055b5e50b5b7b llvm::BasicAAResult::aliasCheck(llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes, llvm::Value const*, llvm::LocationSize, llvm::AAMDNodes, llvm::AAQueryInfo&, llvm::Value const*, llvm::Value const*) llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:1839:0 #27 0x000055b5e50b2093 llvm::BasicAAResult::alias(llvm::MemoryLocation const&, llvm::MemoryLocation const&, llvm::AAQueryInfo&) llvm-project/llvm/lib/Analysis/BasicAliasAnalysis.cpp:837:0 #28 0x000055b5e509be70 llvm::AAResults::Model::alias(llvm::MemoryLocation const&, llvm::MemoryLocation const&, llvm::AAQueryInfo&) llvm-project/llvm/include/llvm/Analysis/AliasAnalysis.h:901:0 #29 0x000055b5e50907d2 llvm::AAResults::alias(llvm::MemoryLocation const&, llvm::MemoryLocation const&, llvm::AAQueryInfo&) llvm-project/llvm/lib/Analysis/AliasAnalysis.cpp:113:0 #30 0x000055b5e50906ff llvm::AAResults::alias(llvm::MemoryLocation const&, llvm::MemoryLocation const&) llvm-project/llvm/lib/Analysis/AliasAnalysis.cpp:107:0 #31 0x000055b5e509f2c3 llvm::AAResults::alias(llvm::Value const*, llvm::LocationSize, llvm::Value const*, llvm::LocationSize) llvm-project/llvm/include/llvm/Analysis/AliasAnalysis.h:355:0 #32 0x000055b5e509cfcc llvm::AAEvaluator::runInternal(llvm::Function&, llvm::AAResults&) llvm-project/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp:153:0 #33 0x000055b5e509f612 llvm::AAEvalLegacyPass::runOnFunction(llvm::Function&) llvm-project/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp:416:0 #34 0x000055b5e5b7d196 llvm::FPPassManager::runOnFunction(llvm::Function&) llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1648:0 #35 0x000055b5e5b7d487 llvm::FPPassManager::runOnModule(llvm::Module&) llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1685:0 #36 0x000055b5e5b7d8dd (anonymous namespace)::MPPassManager::runOnModule(llvm::Module&) llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1752:0 #37 0x000055b5e5b7e09d llvm::legacy::PassManagerImpl::run(llvm::Module&) llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1865:0 #38 0x000055b5e5b7e28f llvm::legacy::PassManager::run(llvm::Module&) llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1897:0 #39 0x000055b5e4ca18de main llvm-project/llvm/tools/opt/opt.cpp:901:0 #40 0x00007fba97bbcb97 __libc_start_main /build/glibc-OTsEL5/glibc-2.27/csu/../csu/libc-start.c:344:0 #41 0x000055b5e4c632aa _start (./bin/opt+0x12d92aa) Aborted (core dumped)