[PATCH] D29055: [LoopUnroll] First form LCSSA, then loop-simplify

Michael Kuperstein via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 23 15:31:02 PST 2017


mkuper created this revision.

Running non-LCSSA-preserving loop-simplify followed by LoopSimplify on (roughly) the same loop is incorrect, since LoopSimplify may break LCSSA arbitrarily higher in the loop nest.
Instead, run LCSSA first, and then run LCSSA-perserving LoopSimplify on the result.

This fixes PR31718.


https://reviews.llvm.org/D29055

Files:
  lib/Transforms/Utils/LoopUnroll.cpp
  test/Transforms/LoopUnroll/pr31718.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D29055.85471.patch
Type: text/x-patch
Size: 3778 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170123/6cde874d/attachment.bin>


More information about the llvm-commits mailing list