ARM: When spilling extra registers for alignment, prefer low registers on all Thumb...
authorPeter Collingbourne <peter@pcc.me.uk>
Thu, 23 Apr 2015 20:31:26 +0000 (20:31 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Thu, 23 Apr 2015 20:31:26 +0000 (20:31 +0000)
commit78f1ecc59c46a1668f79082f589737e4de952e78
tree116247fde525941b0e95de7c69e7de8317e9eb29
parent1213918bf471e20ec537c95b54b82f5286b1ceae
ARM: When spilling extra registers for alignment, prefer low registers on all Thumb targets.

This makes it more likely that we can use the 16-bit push and pop instructions
on Thumb-2, saving around 4 bytes per function.

Differential Revision: http://reviews.llvm.org/D9165

llvm-svn: 235637
llvm/lib/Target/ARM/ARMFrameLowering.cpp
llvm/test/CodeGen/ARM/2013-04-16-AAPCS-C5-vs-VFP.ll
llvm/test/CodeGen/ARM/2013-05-02-AAPCS-ByVal-Structs-C4-C5-VFP.ll
llvm/test/CodeGen/ARM/2013-05-02-AAPCS-ByVal-Structs-C4-C5-VFP2.ll
llvm/test/CodeGen/ARM/debug-frame.ll
llvm/test/CodeGen/ARM/fold-stack-adjust.ll
llvm/test/CodeGen/ARM/interrupt-attr.ll
llvm/test/CodeGen/Thumb2/2009-08-06-SpDecBug.ll
llvm/test/CodeGen/Thumb2/large-stack.ll
llvm/test/CodeGen/Thumb2/tpsoft.ll
llvm/test/MC/ARM/elf-thumbfunc-reloc.ll