[PowerPC] Use vector types for memcpy and friends (sometimes)
authorHal Finkel <hfinkel@anl.gov>
Fri, 27 Feb 2015 19:58:28 +0000 (19:58 +0000)
committerHal Finkel <hfinkel@anl.gov>
Fri, 27 Feb 2015 19:58:28 +0000 (19:58 +0000)
commit5c3cacf5c0dfe0c8ddcf3784da436f9ec8273531
tree0bab33109d709077c70dc29f71d2bbb3a821736b
parent686b1fe65ae90f531d5010b3c6b47b479d4b7ccd
[PowerPC] Use vector types for memcpy and friends (sometimes)

When using Altivec, we can use vector loads and stores for aligned memcpy and
friends. Starting with the P7 and VXS, we have reasonable unaligned vector
stores. Starting with the P8, we have fast unaligned loads too.

For QPX, we use vector loads are stores, but only for aligned memory accesses.

llvm-svn: 230788
llvm/lib/Target/PowerPC/PPCISelLowering.cpp
llvm/test/CodeGen/PowerPC/memcpy-vec.ll [new file with mode: 0644]
llvm/test/CodeGen/PowerPC/ppc64-byval-align.ll