[PATCH] D19487: [LV] Reallow interleaved load groups with gaps

Matthew Simpson via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 26 12:13:14 PDT 2016


mssimpso updated this revision to Diff 55058.
mssimpso added a comment.

Addressed Silviu's comments.

Thanks for catching the negative stride. I now check that a group is not reversed (stride is negative) before allowing it. I also added a reversed test case and check that we do not generate vector loads. For negative strides, we will need a scalar prologue iteration rather than an epilogue, but I'd rather tackle that in a follow-on patch. In the meantime, I've refactored the current patch to distinguish the epilogue and prologue cases. Thanks!


http://reviews.llvm.org/D19487

Files:
  lib/Transforms/Vectorize/LoopVectorize.cpp
  test/Transforms/LoopVectorize/interleaved-accesses.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D19487.55058.patch
Type: text/x-patch
Size: 9636 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160426/51d050f2/attachment.bin>


More information about the llvm-commits mailing list