[PATCH] D79175: [ARM][MVE] Support intrinsic @llvm.set.loop.elements in the tail-predication pass

Sjoerd Meijer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 30 07:21:26 PDT 2020


SjoerdMeijer created this revision.
SjoerdMeijer added reviewers: samparker, dmgreen.
Herald added subscribers: danielkiss, hiraditya, kristof.beyls.
Herald added a project: LLVM.

In D79100 <https://reviews.llvm.org/D79100>, the vectoriser is taught to emit IR intrinsic @llvm.set.loop.elements if a loop is vectorised and tail-folding is applied. This value corresponds to the number of data elements processed by the loop, which is what we need in the tail-predication pass.

Now we pick up this intrinsic the number of elements, which simplifies the pattern matching we were doing to find this value. I have not yet removed the pattern matching because that would require changing of a lot of tests. Thus, for now, the intrinsic and pattern matching coexist together, but as a follow up we probably want to remove this.


https://reviews.llvm.org/D79175

Files:
  llvm/lib/Target/ARM/MVETailPredication.cpp
  llvm/test/CodeGen/Thumb2/LowOverheadLoops/basic-tail-pred.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D79175.261217.patch
Type: text/x-patch
Size: 11524 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200430/c32c10e9/attachment.bin>


More information about the llvm-commits mailing list