[llvm-dev] PassManager assert: postdomtree usage in scalar-evolution

Christof Douma via llvm-dev llvm-dev at lists.llvm.org
Tue Sep 13 10:24:18 PDT 2016

Hi Chandler.

I’ve raised this in Bugzilla as https://llvm.org/bugs/show_bug.cgi?id=30370

By the way, congrats on becoming a director on the LLVM foundation board.


On 12 Sep 2016, at 17:29, Christof Douma <Christof.Douma at arm.com> wrote:

> Hi Chandler.
> I recently ran into problems with what looks like a bad interaction between the new pass manager and the legacy pass manager. I try to use PostDominatorTree analysis pass in scalar-evolution (as a transitive requirement) which makes the LegacyPassManager run into an assert:
> opt: ../lib/IR/LegacyPassManager.cpp:520: void llvm::PMTopLevelManager::setLastUser(llvm::ArrayRef<llvm::Pass*>, llvm::Pass*): Assertion `AnalysisPass && "Expected analysis pass to exist."' failed.
> To reproduce, use the attached patch on ScalarEvolution.cpp and run ./bin/opt  -loop-idiom -loop-unroll empty.ll --debug-pass=Arguments
> Note: the patch is based on svn revision 281213.
> Any idea how to get this working?
> Regards,
> Christof
> <scev-PostDom-transitive.patch>

More information about the llvm-dev mailing list