Reapply r146997, "Heed spill slot alignment on ARM."
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Thu, 5 Jan 2012 00:26:57 +0000 (00:26 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Thu, 5 Jan 2012 00:26:57 +0000 (00:26 +0000)
commit7255a4e1332ccb69918ebe041dff05f9e4e5815d
tree7378c1ee8ab51c78e53aeca3bde52ab3bda9a215
parent54f3b7a9109d1916cf25ffdb2ed5045f03121b5a
Reapply r146997, "Heed spill slot alignment on ARM."

Now that canRealignStack() understands frozen reserved registers, it is
safe to use it for aligned spill instructions.

It will only return true if the registers reserved at the beginning of
register allocation allow for dynamic stack realignment.

<rdar://problem/10625436>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147579 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMBaseInstrInfo.cpp
lib/Target/ARM/ARMBaseRegisterInfo.cpp
test/CodeGen/ARM/fast-isel-deadcode.ll
test/CodeGen/Thumb2/aligned-spill.ll