[PATCH] D67076: [LoopInterchange] Make sure we create PHI nodes for uses in split off latch.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 2 05:49:04 PDT 2019


fhahn created this revision.
fhahn added reviewers: efriedma, mcrosier.
Herald added a subscriber: hiraditya.
Herald added a project: LLVM.

We split the original inner loop latch and the split off block becomes
the new outer loop latch after interchanging. We need to introduce new
LCSSA PHIs for values used by instructions in the split off block and
defined in the inner loop.

This patch renames moveLCSSAPHIS and adds support for adding the missing
LCSSA PHIs. Previously moveLCSSAPHIs mixed references to the structure
before and after interchanging. I've updated the naming to be more
explicit and prefixed variables that refer to the structure before
interchanging with Orig.

Fixes PR43176.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D67076

Files:
  llvm/lib/Transforms/Scalar/LoopInterchange.cpp
  llvm/test/Transforms/LoopInterchange/pr43176-preserve-lcssa.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67076.218341.patch
Type: text/x-patch
Size: 13772 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190902/57430b97/attachment.bin>


More information about the llvm-commits mailing list