[PATCH] D48851: [PM/LoopUnswitch] Fix the first and immediate components of PR37889.

Fedor Sergeev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 4 08:52:44 PDT 2018


fedor.sergeev added a comment.

Hmm... downstream testing found an issue.
Here is a reduced testcase (https://reviews.llvm.org/file/data/b4nvnqme23unyxwktst4/PHID-FILE-wny66mgcso2cbh4ciz3x/reduced-unswitch.ll)

Fails only with your changes applied on top of upstream:

] bin/opt -passes='require<opt-remark-emit>,loop(licm,unswitch)'  reduced-unswitch.ll -disable-output
opt: /home/fsergeev/work/llvm-upstream/llvm/lib/Transforms/Scalar/LICM.cpp:350: bool {anonymous}::LoopInvariantCodeMotion::runOnLoop(llvm::Loop*, llvm::AliasAnalysis*, llvm::LoopInfo*, llvm::DominatorTree*, llvm::TargetLibraryInfo*, llvm::TargetTransformInfo*, llvm::ScalarEvolution*, llvm::MemorySSA*, llvm::OptimizationRemarkEmitter*, bool): Assertion `(!L->getParentLoop() || L->getParentLoop()->isLCSSAForm(*DT)) && "Parent loop not left in LCSSA form after LICM!"' failed.
...


Repository:
  rL LLVM

https://reviews.llvm.org/D48851





More information about the llvm-commits mailing list