So far, instcombine has already been able to transform expressions of the form (logic (cast A), (cast B)) to a simpler form (cast (logic A, B)) where "logic" designates the bitwise operators and/or/xor. However, this simplification has been avoided in case A and B are icmp instructions in order to facilitate the optimization of (zext icmp) occurrences. We now loosen this restriction to also allow the folding of (logic (cast icmp), (cast icmp)) without hindering this (zext icmp) optimization.
Diff Detail
Diff Detail
Event Timeline
Comment Actions
I'll close this again, since I forgot to initially subscribe llvm-commits to this. Sorry for the inconvenience.