This is another instance of the logic from #183159. If we know one source is not-infinity, and the other source is less than or equal to 1, this cannot overflow. Special case llvm.amdgcn.trig.preop, as a substitute for proper range tracking. This almost enables pruning edge case handling in trig function implementations, if not for the recursion depth limit (but that's a problem for another day).