Fix PR14361: wrong simplification of A+B==B+A. You may think that the old logic
authorDuncan Sands <baldrick@free.fr>
Fri, 16 Nov 2012 18:55:49 +0000 (18:55 +0000)
committerDuncan Sands <baldrick@free.fr>
Fri, 16 Nov 2012 18:55:49 +0000 (18:55 +0000)
commit1d3acddf0e9b49ad3d489aafc61ea90c71724ba2
tree47b3c141f9d068bcfabeea19ea34027cd96914b7
parent98f57cacaecb278c702612f1cf0c3d9a280b072d
Fix PR14361: wrong simplification of A+B==B+A.  You may think that the old logic
replaced by this patch is equivalent to the new logic, but you'd be wrong, and
that's exactly where the bug was.  There's a similar bug in instsimplify which
manifests itself as instsimplify failing to simplify this, rather than doing it
wrong, see next commit.

llvm-svn: 168181
llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
llvm/test/Transforms/InstCombine/icmp.ll