[InstCombine] Try to fold `not` into `cmp` iff other users of `cmp` are freely invertible
authorRoman Lebedev <lebedev.ri@gmail.com>
Sun, 18 Dec 2022 21:10:47 +0000 (00:10 +0300)
committerRoman Lebedev <lebedev.ri@gmail.com>
Sun, 18 Dec 2022 21:24:28 +0000 (00:24 +0300)
commit4def99e642806f3f8e94cb2aa9356d63cd233dd0
tree72ccb9cb71b2212e39ce7ce346ee53e4536cdcb8
parentf61de3c1aa8fa4a5fdccbf213e5dca507073d431
[InstCombine] Try to fold `not` into `cmp` iff other users of `cmp` are freely invertible

There is still some such patterns that require collaboration
of folds to handle,that we don't currently do.
llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
llvm/test/Transforms/CallSiteSplitting/callsite-split.ll
llvm/test/Transforms/InstCombine/assume-icmp-null-select.ll
llvm/test/Transforms/InstCombine/dont-distribute-phi.ll
llvm/test/Transforms/LoopVectorize/induction.ll
llvm/test/Transforms/PhaseOrdering/simplifycfg-options.ll
llvm/test/Transforms/SimplifyCFG/merge-cond-stores.ll