New InstCombine pattern: (icmp ult/ule (A + C1), C3) | (icmp ult/ule (A + C2), C3...
authorYi Jiang <yjiang@apple.com>
Wed, 20 Aug 2014 22:55:40 +0000 (22:55 +0000)
committerYi Jiang <yjiang@apple.com>
Wed, 20 Aug 2014 22:55:40 +0000 (22:55 +0000)
commitee1b45f2a2dbe7e1ecfdb0cf6c4e0c22eb3f18ae
tree5ff5a7bb0463bb2ade04ca7e306280b35f133217
parent9ec471a5d8dbd0da9bb758c71f2ef4486e4e4d49
New InstCombine pattern: (icmp ult/ule (A + C1), C3) | (icmp ult/ule (A + C2), C3)  to (icmp ult/ule ((A & ~(C1 ^ C2)) + max(C1, C2)), C3) under certain condition

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216135 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
test/Transforms/InstCombine/or.ll