umin(1, x) reduces to checking if x != 0 as the expression can only be zero if x == 0. InstCombine has been taught to turn the umin form into the zext of icmp form; this patch adjusts the cost model used for determining if an expression is "high cost" to apply discount the same case.
This is was found while working on a variant of what would eventually become D105216. It has the effect of allowing LFTR more often when we use the ceiling expansion. However, I have not been able to find a way to test it on it's own. I'm tempted to land it without tests, but maybe a reviewer has a better idea?
clang-format: please reformat the code