[InstCombine] remove zext-of-icmp fold that may conflict with other folds
authorSanjay Patel <spatel@rotateright.com>
Tue, 10 Jan 2023 14:54:54 +0000 (09:54 -0500)
committerSanjay Patel <spatel@rotateright.com>
Tue, 10 Jan 2023 15:23:21 +0000 (10:23 -0500)
commit2aa471bd92dfd9a682e1287840a4ced5d9f36c84
treeb12e27135605e4e5a39c94166f3381730cab4545
parent7a7530a352c3dcd5d7d34ec18cff5fb950ce223f
[InstCombine] remove zext-of-icmp fold that may conflict with other folds

This bit-hack transform would cause the new test to infinite loop
after 21d3871b7c90f85b3ae.

The deleted transform has existed for a very long time,
but the profitable parts appear to be handled by other
folds now. This fold could replace 2 instructions with
4 instructions, so it was always in danger of going
overboard.

No tests regress by removing the whole thing.
llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
llvm/test/Transforms/InstCombine/zext.ll