InstCombine: Preserve nsw for (mul %V, -1) -> (sub 0, %V)
InstCombine: Preserve nsw/nuw for ((X << C2)*C1) -> (X * (C1 << C2))