[PATCH] D76511: [ARM] Don't split trunc stores that can be better handled as VMOVN
Dave Green via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Mar 20 09:44:42 PDT 2020
dmgreen created this revision.
dmgreen added reviewers: samparker, SjoerdMeijer, simon_tatham, ostannard.
Herald added subscribers: hiraditya, kristof.beyls.
We deliberately split stores of the form store(truncate(larger-than-legal-type)) into two stores, allowing each store to perform part of the truncate for free.
There are times however where it makes more sense to use VMOVN to de-interlace the results back into a single vector, and store that in one go. This adds a check for that situation, not splitting the store if it looks like a VMOVN can be more useful.
https://reviews.llvm.org/D76511
Files:
llvm/lib/Target/ARM/ARMISelLowering.cpp
llvm/test/CodeGen/Thumb2/mve-vmovnstore.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D76511.251672.patch
Type: text/x-patch
Size: 6587 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200320/10aeb930/attachment.bin>
More information about the llvm-commits
mailing list