{"push_id":836796771,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"698f423615c0266dd63c8e0d19cda366def6a7dd","before":"a087a2b9436aa509f728cd5aeea92d33a86c803d","commits":[{"sha":"698f423615c0266dd63c8e0d19cda366def6a7dd","author":{"email":"f4a524c472c347a18d71daaa7c4ae51db69c69da@arm.com","name":"James Molloy"},"message":"[ValueTracking] Add a new predicate: isKnownNonEqual()\n\nisKnownNonEqual(A, B) returns true if it can be determined that A != B.\n\nAt the moment it only knows two facts, that a non-wrapping add of nonzero to a value cannot be that value:\n\nA + B != A [where B != 0, addition is nsw or nuw]\n\nand that contradictory known bits imply two values are not equal.\n\nThis patch also hooks this up to InstSimplify; InstSimplify had a peephole for the first fact but not the second so this teaches InstSimplify a new trick too (alas no measured performance impact!)","distinct":true,"url":"https://api.github.com/repos/llvm-project/llvm-project-submodule/commits/698f423615c0266dd63c8e0d19cda366def6a7dd"}]}