Fix a problem that Nate noticed, where spill code was not getting coallesced
authorChris Lattner <sabre@nondot.org>
Fri, 9 Sep 2005 21:46:49 +0000 (21:46 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 9 Sep 2005 21:46:49 +0000 (21:46 +0000)
commitf38df04c3a0c2aa766fa50b254d2d0fc743f8152
tree96ec08c0df059cb57a6940ac19801af3a53b9959
parent1463019e84cea6857914cea30c0180ec7289f09f
Fix a problem that Nate noticed, where spill code was not getting coallesced
with copies, leading to code like this:

       lwz r4, 380(r1)
       or r10, r4, r4    ;; Last use of r4

By teaching the PPC backend how to fold spills into copies, we now get this
code:

       lwz r10, 380(r1)

wow. :)

This reduces a testcase nate sent me from 1505 instructions to 1484.

Note that this could handle FP values but doesn't currently, for reasons
mentioned in the patch

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23298 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/PowerPC/PPCRegisterInfo.cpp
lib/Target/PowerPC/PPCRegisterInfo.h