[PATCH] D83288: [LV] Pick vector loop body as insert point for SCEV expansion.
Florian Hahn via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 8 07:49:04 PDT 2020
fhahn updated this revision to Diff 276435.
fhahn added a comment.
In D83288#2135681 <https://reviews.llvm.org/D83288#2135681>, @dmgreen wrote:
> Is the DT reliable enough to use for checking the block is in the loop? I see we might have to exclude the preheader and midblock. But if it's not uptodate, and only knows about split block, it might think the midblock it dominated by the vector body.
> Maybe if LI->getLoopFor(LoopVectorBody == LI->getLoopFor(InsertBB) works, that may be better? It looks like LI is kept uptodate as blocks get split.
We are mainly want to avoid using LoopVectorBody as insert point for blocks not dominated by t. The new blocks will be unreachable initially and dominated by everything, so it should work fine.
That being said, LI is updated directly as you mentioned, so it is probably better to just use LI. Updated the patch, thanks!
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D83288/new/
https://reviews.llvm.org/D83288
Files:
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/test/Transforms/LoopVectorize/pr46525-expander-insertpoint.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D83288.276435.patch
Type: text/x-patch
Size: 8223 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200708/2fff2c6e/attachment-0001.bin>
More information about the llvm-commits
mailing list