This is an archive of the discontinued LLVM Phabricator instance.

[Dominators] Remove the NCA check
ClosedPublic

Authored by kuhar on Oct 11 2017, 7:52 AM.

Details

Summary

This patch removes the verifyNCD check.

The reason for this is that the other checks are sufficient to prove or disprove correctness of any DominatorTree, and that verifyNCD doesn't provide (in my option) better error messages then the other ones.
Additionally, this should give a (small) improvement to the total verification time, as the check is O(n), and checking the sibling property takes O(n^3).

Diff Detail

Event Timeline

kuhar created this revision.Oct 11 2017, 7:52 AM
kuhar edited the summary of this revision. (Show Details)
brzycki accepted this revision.Oct 11 2017, 8:24 AM

When working on JumpThreading I never saw a failure due to NCD verification so I think you're intuition about other checks makes sense.

This revision is now accepted and ready to land.Oct 11 2017, 8:24 AM
This revision was automatically updated to reflect the committed changes.