mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-17 18:31:04 +00:00
Dial back the speculative fix for PR8954 a bit, so that we only recompute dominators
once at the beginning of GVN instead of once per iteration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123278 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b08773749a
commit
d8c120bbd3
@ -1754,6 +1754,9 @@ bool GVN::runOnFunction(Function& F) {
|
|||||||
|
|
||||||
unsigned Iteration = 0;
|
unsigned Iteration = 0;
|
||||||
|
|
||||||
|
// FIXME: Remove this when PR8954 is fixed.
|
||||||
|
DT->DT->recalculate(F);
|
||||||
|
|
||||||
while (ShouldContinue) {
|
while (ShouldContinue) {
|
||||||
DEBUG(dbgs() << "GVN iteration: " << Iteration << "\n");
|
DEBUG(dbgs() << "GVN iteration: " << Iteration << "\n");
|
||||||
ShouldContinue = iterateOnFunction(F);
|
ShouldContinue = iterateOnFunction(F);
|
||||||
@ -2011,7 +2014,6 @@ bool GVN::iterateOnFunction(Function &F) {
|
|||||||
RE = RPOT.end(); RI != RE; ++RI)
|
RE = RPOT.end(); RI != RE; ++RI)
|
||||||
Changed |= processBlock(*RI);
|
Changed |= processBlock(*RI);
|
||||||
#else
|
#else
|
||||||
DT->DT->recalculate(F);
|
|
||||||
for (df_iterator<DomTreeNode*> DI = df_begin(DT->getRootNode()),
|
for (df_iterator<DomTreeNode*> DI = df_begin(DT->getRootNode()),
|
||||||
DE = df_end(DT->getRootNode()); DI != DE; ++DI)
|
DE = df_end(DT->getRootNode()); DI != DE; ++DI)
|
||||||
Changed |= processBlock(DI->getBlock());
|
Changed |= processBlock(DI->getBlock());
|
||||||
|
Loading…
Reference in New Issue
Block a user