Since https://reviews.llvm.org/D141386 !range violations return poison instead of causing immediate undefined behavior. As such, it is fine for IPSCCP to infer !range even if the value might be poison. (The value cannot be undef as this would promote undef to poison, but this is already checked separately.)
This basically undoes the late change done to D83952, restoring it to its original version (which is now valid).