Spill multiple registers at once.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Sat, 12 Mar 2011 04:17:20 +0000 (04:17 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Sat, 12 Mar 2011 04:17:20 +0000 (04:17 +0000)
commit10a433238fe4679c8da17f3eb19611466332e312
tree5fb2db6f54a316f1610f6ea42390d1fe4da25135
parent7a387e4d9de9ab8155836e65138621192ba8316a
Spill multiple registers at once.

Live range splitting can create a number of small live ranges containing only a
single real use. Spill these small live ranges along with the large range they
are connected to with copies. This enables memory operand folding and maximizes
the spill to fill distance.

Work in progress with known bugs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127529 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/InlineSpiller.cpp
lib/CodeGen/RegAllocBasic.cpp