mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Backed out changeset 05ea15825d81 (bug 1244828)
This commit is contained in:
parent
d6a0ff9f7b
commit
a3f3766574
@ -1193,7 +1193,7 @@ class TypeAnalyzer
|
||||
bool propagateSpecialization(MPhi* phi);
|
||||
bool specializePhis();
|
||||
void replaceRedundantPhi(MPhi* phi);
|
||||
bool adjustPhiInputs(MPhi* phi);
|
||||
void adjustPhiInputs(MPhi* phi);
|
||||
bool adjustInputs(MDefinition* def);
|
||||
bool insertConversions();
|
||||
|
||||
@ -1408,7 +1408,7 @@ TypeAnalyzer::specializePhis()
|
||||
return true;
|
||||
}
|
||||
|
||||
bool
|
||||
void
|
||||
TypeAnalyzer::adjustPhiInputs(MPhi* phi)
|
||||
{
|
||||
MIRType phiType = phi->type();
|
||||
@ -1424,9 +1424,6 @@ TypeAnalyzer::adjustPhiInputs(MPhi* phi)
|
||||
if (in->type() == phiType)
|
||||
continue;
|
||||
|
||||
if (!alloc().ensureBallast())
|
||||
return false;
|
||||
|
||||
if (in->isBox() && in->toBox()->input()->type() == phiType) {
|
||||
phi->replaceOperand(i, in->toBox()->input());
|
||||
} else {
|
||||
@ -1470,7 +1467,7 @@ TypeAnalyzer::adjustPhiInputs(MPhi* phi)
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
return;
|
||||
}
|
||||
|
||||
// Box every typed input.
|
||||
@ -1484,15 +1481,10 @@ TypeAnalyzer::adjustPhiInputs(MPhi* phi)
|
||||
// the original box.
|
||||
phi->replaceOperand(i, in->toUnbox()->input());
|
||||
} else {
|
||||
if (!alloc().ensureBallast())
|
||||
return false;
|
||||
|
||||
MDefinition* box = AlwaysBoxAt(alloc(), in->block()->lastIns(), in);
|
||||
phi->replaceOperand(i, box);
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool
|
||||
@ -1560,8 +1552,7 @@ TypeAnalyzer::insertConversions()
|
||||
replaceRedundantPhi(phi);
|
||||
block->discardPhi(phi);
|
||||
} else {
|
||||
if (!adjustPhiInputs(phi))
|
||||
return false;
|
||||
adjustPhiInputs(phi);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user