mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 10:42:39 +01:00
[Attributor][FIX] Properly return changed if the IR was modified
Deleting or replacing anything is certainly a modification. This caused a later assertion in IPSCCP when compiling 400.perlbench with the new PM. I'm not sure how to test this.
This commit is contained in:
parent
b6ff4a7671
commit
ec05659ebd
@ -1306,9 +1306,27 @@ ChangeStatus Attributor::cleanupIR() {
|
||||
CGUpdater.removeFunction(*Fn);
|
||||
}
|
||||
|
||||
if (!ToBeChangedUses.empty())
|
||||
ManifestChange = ChangeStatus::CHANGED;
|
||||
|
||||
if (!ToBeChangedToUnreachableInsts.empty())
|
||||
ManifestChange = ChangeStatus::CHANGED;
|
||||
|
||||
if (!ToBeDeletedFunctions.empty())
|
||||
ManifestChange = ChangeStatus::CHANGED;
|
||||
|
||||
if (!ToBeDeletedBlocks.empty())
|
||||
ManifestChange = ChangeStatus::CHANGED;
|
||||
|
||||
if (!ToBeDeletedInsts.empty())
|
||||
ManifestChange = ChangeStatus::CHANGED;
|
||||
|
||||
if (!InvokeWithDeadSuccessor.empty())
|
||||
ManifestChange = ChangeStatus::CHANGED;
|
||||
|
||||
if (!DeadInsts.empty())
|
||||
ManifestChange = ChangeStatus::CHANGED;
|
||||
|
||||
NumFnDeleted += ToBeDeletedFunctions.size();
|
||||
|
||||
LLVM_DEBUG(dbgs() << "[Attributor] Deleted " << NumFnDeleted
|
||||
|
Loading…
Reference in New Issue
Block a user