[PATCH] D20250: [ARM/AArch64] Match additional patterns to ldN instructions
Matthew Simpson via llvm-commits
llvm-commits at lists.llvm.org
Fri May 13 11:12:20 PDT 2016
mssimpso created this revision.
mssimpso added reviewers: jmolloy, rengolin.
mssimpso added subscribers: mcrosier, llvm-commits.
Herald added subscribers: rengolin, aemerson.
When matching an interleaved load to an ldN pattern, the interleaved access pass checks that all users of the load are shuffles. If the load is used by an instruction other than a shuffle, the pass gives up and an ldN is not generated. This patch considers users of the load that are extractelement instructions. It attempts to modify the extracts to use one of the available shuffles instead of the load. After the transformation, the load is only used by shuffles and will then be matched with an ldN pattern.
http://reviews.llvm.org/D20250
Files:
lib/CodeGen/InterleavedAccessPass.cpp
test/CodeGen/AArch64/aarch64-interleaved-accesses.ll
test/CodeGen/ARM/arm-interleaved-accesses.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20250.57223.patch
Type: text/x-patch
Size: 7637 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160513/8c306bf8/attachment.bin>
More information about the llvm-commits
mailing list