summaryrefslogtreecommitdiff
path: root/lib/CodeGen/InterferenceCache.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2011-07-14 00:58:38 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2011-07-14 00:58:38 +0000
commit4fcfcf498436533ea9bc59404d10751bc76cfd2c (patch)
tree84f08aa3feb20f087d8bbca14ad08da6bc9bb6dc /lib/CodeGen/InterferenceCache.cpp
parent6a9feaac935c9345f825b272cf3225248e282f3f (diff)
downloadllvm-4fcfcf498436533ea9bc59404d10751bc76cfd2c.tar.gz
llvm-4fcfcf498436533ea9bc59404d10751bc76cfd2c.tar.bz2
llvm-4fcfcf498436533ea9bc59404d10751bc76cfd2c.tar.xz
Revert r135121 which broke a gcc-4.2 builder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135122 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/InterferenceCache.cpp')
-rw-r--r--lib/CodeGen/InterferenceCache.cpp17
1 files changed, 3 insertions, 14 deletions
diff --git a/lib/CodeGen/InterferenceCache.cpp b/lib/CodeGen/InterferenceCache.cpp
index a09bb39f83..b1014a97fa 100644
--- a/lib/CodeGen/InterferenceCache.cpp
+++ b/lib/CodeGen/InterferenceCache.cpp
@@ -14,7 +14,6 @@
#define DEBUG_TYPE "regalloc"
#include "InterferenceCache.h"
#include "llvm/Target/TargetRegisterInfo.h"
-#include "llvm/Support/ErrorHandling.h"
using namespace llvm;
@@ -41,18 +40,9 @@ InterferenceCache::Entry *InterferenceCache::get(unsigned PhysReg) {
E = RoundRobin;
if (++RoundRobin == CacheEntries)
RoundRobin = 0;
- for (unsigned i = 0; i != CacheEntries; ++i) {
- // Skip entries that are in use.
- if (Entries[E].hasRefs()) {
- if (++E == CacheEntries)
- E = 0;
- continue;
- }
- Entries[E].reset(PhysReg, LIUArray, TRI, MF);
- PhysRegEntries[PhysReg] = E;
- return &Entries[E];
- }
- llvm_unreachable("Ran out of interference cache entries.");
+ Entries[E].reset(PhysReg, LIUArray, TRI, MF);
+ PhysRegEntries[PhysReg] = E;
+ return &Entries[E];
}
/// revalidate - LIU contents have changed, update tags.
@@ -69,7 +59,6 @@ void InterferenceCache::Entry::reset(unsigned physReg,
LiveIntervalUnion *LIUArray,
const TargetRegisterInfo *TRI,
const MachineFunction *MF) {
- assert(!hasRefs() && "Cannot reset cache entry with references");
// LIU's changed, invalidate cache.
++Tag;
PhysReg = physReg;