I was investigating why a different simplification wasn't happening and noticed that we don't have this fold for the easy case with constants.
We would eventually catch these via demanded bits and computing known bits in InstCombine, but I think it's better to handle the simple cases as soon as possible as a matter of efficiency?
If there's a better way to do the APInt manipulations, please let me know.