[PATCH] D143396: [ARM] Perform lane interleaving from reductions.

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 6 06:58:42 PST 2023


dmgreen created this revision.
dmgreen added reviewers: samtebbs, NickGuy, simon_tatham, ostannard.
Herald added subscribers: hiraditya, kristof.beyls.
Herald added a project: All.
dmgreen requested review of this revision.
Herald added a project: LLVM.

We have a pass for MVE to perform lane interleaving to make use of top/bottom instructions, that adds shuffles before extends and after truncates. This extends it to also start from add reductions, where the order of lanes does not matter so the shuffle is not needed. We need to be careful about not breaking the form of existing reductions, but otherwise can save some instructions and awkward extends.


https://reviews.llvm.org/D143396

Files:
  llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
  llvm/test/CodeGen/Thumb2/mve-laneinterleaving-reduct.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D143396.495110.patch
Type: text/x-patch
Size: 7214 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230206/866c4ac4/attachment.bin>


More information about the llvm-commits mailing list