mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-14 17:34:41 +00:00
Fix the sense of joinable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15196 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
d67e439241
commit
c25b55a5b2
@ -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;
|
||||
}
|
||||
|
||||
|
||||
|
@ -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);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user