Be less aggressive about hinting in RAFast.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Mon, 13 Jun 2011 03:26:46 +0000 (03:26 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Mon, 13 Jun 2011 03:26:46 +0000 (03:26 +0000)
commit5e5ed4457749995b46d46e9769e657fcc0818e2c
treec97c95cd44a3fe2469a41fb69cf45e15125a20af
parent687397c01387534e98d2e8332d4b91536290d778
Be less aggressive about hinting in RAFast.

In particular, don't spill dirty registers only to satisfy a hint. It is
not worth it.

The attached test case provides an example where the fast allocator
would spill a register when other registers are available.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132900 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/RegAllocFast.cpp
test/CodeGen/ARM/fast-isel-static.ll
test/CodeGen/X86/2011-06-12-FastAllocSpill.ll [new file with mode: 0644]
test/CodeGen/X86/fast-isel-gep.ll