summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/RegAllocGreedy.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2010-12-09 21:20:46 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2010-12-09 21:20:46 +0000
commit34138079138535e706e15e7d4e9b6294fe05a0b1 (patch)
treed2c1ba5e252f8040b5a86f6ba1e220a01a12cce6 /llvm/lib/CodeGen/RegAllocGreedy.cpp
parent4c2fadbc18c5a4657e3202b34633668ce26dea97 (diff)
downloadbcm5719-llvm-34138079138535e706e15e7d4e9b6294fe05a0b1.tar.gz
bcm5719-llvm-34138079138535e706e15e7d4e9b6294fe05a0b1.zip
Remember to filter out reserved rergisters from the allocation order.
llvm-svn: 121411
Diffstat (limited to 'llvm/lib/CodeGen/RegAllocGreedy.cpp')
-rw-r--r--llvm/lib/CodeGen/RegAllocGreedy.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/RegAllocGreedy.cpp b/llvm/lib/CodeGen/RegAllocGreedy.cpp
index eae4cccb549..3c166bac4b4 100644
--- a/llvm/lib/CodeGen/RegAllocGreedy.cpp
+++ b/llvm/lib/CodeGen/RegAllocGreedy.cpp
@@ -165,7 +165,7 @@ bool RAGreedy::reassignVReg(LiveInterval &InterferingVReg,
E = TRC->allocation_order_end(*MF);
I != E; ++I) {
unsigned PhysReg = *I;
- if (PhysReg == OldPhysReg)
+ if (PhysReg == OldPhysReg || ReservedRegs.test(PhysReg))
continue;
// Instantiate a "subquery", not to be confused with the Queries array.
OpenPOWER on IntegriCloud