Remove non-existent 64-bit Word and Int literals from front-end syntax
This removes HsInt64Prim
and HsWord64Prim
literals from the front-end
syntax.
We don't have concrete syntax for these so they're not possible to introduce in a .hs file.
HsInt64Prim
was never used.
HsWord64Prim
was used in when generating Typeable
instances. TyCon
fingerprints are 128-bit, which were previously represented as two
Word64#
on both 32-bit and 64-bit. To generate Word64#
when generating
Typeable
instances HsWord64Prim
was used. We now use 2 Word#
s on 64-bit
and 4 Word#
s on 32-bit in GHC.Types.TyCon for the fingerprint,
eliminating the need for Word64#
literals.
Conversion of these Word#
fields of GHC.Types.TyCon
to the actual
128-bit fingerprints is done in Data.Typeable.Internal
. On 32-bit we now
use bitwise operations in GHC.IntWord64
for this conversion.