[PATCH] D39612: [PowerPC] Modify memcpy datasize in memcpy loop expansion
Brad Nemanich via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Nov 3 13:03:54 PDT 2017
bnemanich created this revision.
Turns on memcpy loop expansion optimization by default for PowerPC.
Turns off memcpy loop expansion for unknown sized memcpy calls but provides a new option to enable expansion for unknown sized memcpy calls.
Also provides a new option to enable expansion for unknown sized memcpy calls for non-pgo runs.
Changes the loop datasize to be 32 bytes.
Micro-benchmarks have shown that this optimization can more than double the performance for known size memcpy calls that are smaller than 512 bytes on Power8 machines.
https://reviews.llvm.org/D39612
Files:
lib/Target/PowerPC/PPCLowerMemIntrinsics.cpp
lib/Target/PowerPC/PPCTargetTransformInfo.cpp
lib/Transforms/Utils/LowerMemIntrinsics.cpp
test/CodeGen/PowerPC/memcpy-loop-expansion.ll
test/CodeGen/PowerPC/memcpy.nopgo.ll
test/CodeGen/PowerPC/memcpy.pgo.cold.ll
test/CodeGen/PowerPC/memcpy.pgo.hot.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D39612.121528.patch
Type: text/x-patch
Size: 36660 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171103/45b9f91b/attachment.bin>
More information about the llvm-commits
mailing list