aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2010-02-11 23:55:29 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2010-02-11 23:55:29 +0000
commit4a540f0593f32d928534817b59c4a528e2197e0c (patch)
tree9c30fc9ef6ce4812fc7855571f21b2f0987148a9 /lib
parent0d7b0aa76036abc3118d148fbf02ad287bc7be6c (diff)
downloadexternal_llvm-4a540f0593f32d928534817b59c4a528e2197e0c.zip
external_llvm-4a540f0593f32d928534817b59c4a528e2197e0c.tar.gz
external_llvm-4a540f0593f32d928534817b59c4a528e2197e0c.tar.bz2
Reapply coalescer fix for better cross-class coalescing.
This time with fixed test cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95938 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/CodeGen/SimpleRegisterCoalescing.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/CodeGen/SimpleRegisterCoalescing.cpp b/lib/CodeGen/SimpleRegisterCoalescing.cpp
index df5c0ef..ac19f48 100644
--- a/lib/CodeGen/SimpleRegisterCoalescing.cpp
+++ b/lib/CodeGen/SimpleRegisterCoalescing.cpp
@@ -1148,7 +1148,7 @@ SimpleRegisterCoalescing::isWinToJoinCrossClass(unsigned LargeReg,
LiveInterval &SmallInt = li_->getInterval(SmallReg);
unsigned LargeSize = li_->getApproximateInstructionCount(LargeInt);
unsigned SmallSize = li_->getApproximateInstructionCount(SmallInt);
- if (SmallSize > Threshold || LargeSize > Threshold) {
+ if (LargeSize > Threshold) {
unsigned SmallUses = std::distance(mri_->use_nodbg_begin(SmallReg),
mri_->use_nodbg_end());
unsigned LargeUses = std::distance(mri_->use_nodbg_begin(LargeReg),