Consider addrspaces in canLosslesslyBitCastTo()

Make this conservatively correct and report false for different
address spaces, which might require a nontrivial translation.

Based on the few uses of this, I don't think this currently
breaks anything.