[PATCH] D41737: [PowerPC] Try to move the stack pointer update instruction later in the prologue and earlier in the epilogue
Stefan Pintilie via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 4 12:10:20 PST 2018
stefanp created this revision.
stefanp added reviewers: kbarton, nemanjai, inouehrs, sfertile, lei, syzaara, jtony, hfinkel, echristo.
Herald added a subscriber: qcolombet.
This should provide a small performance boost in functions that are able to do this.
I've kept this change rather conservative at the moment and functions with frame pointers or base pointers will not try to move the stack pointer update.
Performance numbers on Power 8 for SPEC 2006
429.mcf - 1.5 % improvement
462.libquantum - 1.0 % improvement
464.h264ref - 3.0 % improvement
471.omnetpp - 1.0 % improvement
453.povray - 1.5 % improvement
All other benchmarks changed less than 0.2 % which I consider as "no change".
I have found no degradations in SPEC2006.
https://reviews.llvm.org/D41737
Files:
lib/Target/PowerPC/PPCFrameLowering.cpp
test/CodeGen/PowerPC/MCSE-caller-preserved-reg.ll
test/CodeGen/PowerPC/ppc-redzone-alignment-bug.ll
test/CodeGen/PowerPC/ppc-shrink-wrapping.ll
test/CodeGen/PowerPC/tls_get_addr_clobbers.ll
test/CodeGen/PowerPC/vsxD-Form-spills.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D41737.128635.patch
Type: text/x-patch
Size: 12278 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180104/9b7addc1/attachment.bin>
More information about the llvm-commits
mailing list