if (i->start == j->start) {
// If this is not the allowed value merge, we cannot join.
if (i->ValId != ThisValIdx || j->ValId != OtherValIdx)
if (i->start == j->start) {
// If this is not the allowed value merge, we cannot join.
if (i->ValId != ThisValIdx || j->ValId != OtherValIdx)
} else if (i->start < j->start) {
if (i->end > j->start) {
if (i->ValId != ThisValIdx || j->ValId != OtherValIdx)
} else if (i->start < j->start) {
if (i->end > j->start) {
if (i->ValId != ThisValIdx || j->ValId != OtherValIdx)
}
} else {
if (j->end > i->start) {
if (i->ValId != ThisValIdx || j->ValId != OtherValIdx)
}
} else {
if (j->end > i->start) {
if (i->ValId != ThisValIdx || j->ValId != OtherValIdx)
IntA.containsOneValue() && IntB.containsOneValue();
unsigned MIDefIdx = getDefIndex(getInstructionIndex(mi));
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);
!overlapsAliases(&IntA, &IntB)) {
IntB.join(IntA, MIDefIdx);