diff options
author | Chris Lattner <sabre@nondot.org> | 2004-07-25 07:47:25 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-07-25 07:47:25 +0000 |
commit | c25b55a5b237772bbd7cc55988d3ca0ec569aede (patch) | |
tree | ae4a7771178eb34141b80385350a8d700683d368 | |
parent | d67e4392412232a9aa5bf7560c0b0e624a842b65 (diff) |
Fix the sense of joinable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15196 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/CodeGen/LiveInterval.cpp | 8 | ||||
-rw-r--r-- | lib/CodeGen/LiveIntervalAnalysis.cpp | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/lib/CodeGen/LiveInterval.cpp b/lib/CodeGen/LiveInterval.cpp index 5326511104..6bd441f643 100644 --- a/lib/CodeGen/LiveInterval.cpp +++ b/lib/CodeGen/LiveInterval.cpp @@ -116,16 +116,16 @@ bool LiveInterval::joinable(const LiveInterval &other, unsigned CopyIdx) const { if (i->start == j->start) { // If this is not the allowed value merge, we cannot join. if (i->ValId != ThisValIdx || j->ValId != OtherValIdx) - return true; + return false; } else if (i->start < j->start) { if (i->end > j->start) { if (i->ValId != ThisValIdx || j->ValId != OtherValIdx) - return true; + return false; } } else { if (j->end > i->start) { if (i->ValId != ThisValIdx || j->ValId != OtherValIdx) - return true; + return false; } } if (i->end < j->end) @@ -134,7 +134,7 @@ bool LiveInterval::joinable(const LiveInterval &other, unsigned CopyIdx) const { ++j; } - return false; + return true; } diff --git a/lib/CodeGen/LiveIntervalAnalysis.cpp b/lib/CodeGen/LiveIntervalAnalysis.cpp index 361210e106..ed90fca3df 100644 --- a/lib/CodeGen/LiveIntervalAnalysis.cpp +++ b/lib/CodeGen/LiveIntervalAnalysis.cpp @@ -577,7 +577,7 @@ void LiveIntervals::joinIntervalsInMachineBB(MachineBasicBlock *MBB) { IntA.containsOneValue() && IntB.containsOneValue(); unsigned MIDefIdx = getDefIndex(getInstructionIndex(mi)); - if ((TriviallyJoinable || !IntB.joinable(IntA, MIDefIdx)) && + if ((TriviallyJoinable || IntB.joinable(IntA, MIDefIdx)) && !overlapsAliases(&IntA, &IntB)) { IntB.join(IntA, MIDefIdx); |