Bug 1205073: IonMonkey - Take definition type in consideration when splitting before first register use, r=bhackett

This commit is contained in:
Hannes Verschore 2016-10-24 13:08:11 +02:00
Родитель 6572f13e21
Коммит 8bce4d3904
1 изменённых файлов: 9 добавлений и 0 удалений

Просмотреть файл

@ -2776,6 +2776,13 @@ BacktrackingAllocator::trySplitBeforeFirstRegisterUse(LiveBundle* bundle, LiveBu
for (LiveRange::BundleLinkIterator iter = bundle->rangesBegin(); iter; iter++) {
LiveRange* range = LiveRange::get(*iter);
if (!conflict || range->from() > conflictEnd) {
if (range->hasDefinition() && isRegisterDefinition(range)) {
firstRegisterFrom = range->from();
break;
}
}
for (UsePositionIterator iter(range->usesBegin()); iter; iter++) {
LNode* ins = insData[iter->pos];
@ -2786,6 +2793,8 @@ BacktrackingAllocator::trySplitBeforeFirstRegisterUse(LiveBundle* bundle, LiveBu
}
}
}
if (firstRegisterFrom.bits())
break;
}
if (!firstRegisterFrom.bits()) {