summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2010-08-31 19:54:25 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2010-08-31 19:54:25 +0000
commit2c325dc907bc84702cc76e64dd25bb1384143fed (patch)
tree32d652941e002144800537104b87232bbfe3f0d1 /llvm
parent529f248eb4a107946e7fa1013370f514c7d7dcea (diff)
downloadbcm5719-llvm-2c325dc907bc84702cc76e64dd25bb1384143fed.tar.gz
bcm5719-llvm-2c325dc907bc84702cc76e64dd25bb1384143fed.zip
Ignore unallocatable registers in RegAllocFast.
llvm-svn: 112632
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/CodeGen/RegAllocFast.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/RegAllocFast.cpp b/llvm/lib/CodeGen/RegAllocFast.cpp
index 8f6496dcac7..237686859fa 100644
--- a/llvm/lib/CodeGen/RegAllocFast.cpp
+++ b/llvm/lib/CodeGen/RegAllocFast.cpp
@@ -736,7 +736,8 @@ void RAFast::AllocateBasicBlock() {
// Add live-in registers as live.
for (MachineBasicBlock::livein_iterator I = MBB->livein_begin(),
E = MBB->livein_end(); I != E; ++I)
- definePhysReg(MII, *I, regReserved);
+ if (Allocatable.test(*I))
+ definePhysReg(MII, *I, regReserved);
SmallVector<unsigned, 8> VirtDead;
SmallVector<MachineInstr*, 32> Coalesced;
OpenPOWER on IntegriCloud