Stop reordering the pointers passed in ProvenanceAnalysis::related based on their values. That was causing non-determinism as the call to relatedCheck(A, B) isn't guaranteed to return the same result as relatedCheck(B, A).
Revert the following three commits (except the original test case in related-check.ll):
665e47777df17db406c698d57b4f3c28d67c432e
295861514e0d1e48df2918b630dd692ac27ee0de
d877e3fe71676b0ff10410d80456b35cdd5bf796
These changes shouldn't be necessary once the call to std::swap is removed.
Does this need to be removed? I assume it was a non-deterministic test case.