diff options
author | John Ericson <git@JohnEricson.me> | 2019-06-10 09:32:50 -0400 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2019-07-17 12:20:26 -0400 |
commit | 0a9b77b8b4313a9ffe7483cbc286d249fda59e75 (patch) | |
tree | b2f463b84513f965b3bf2b505a443230d6fc0364 /compiler/types | |
parent | 52f755aa203c55e44dce79c9ac1abc245977b000 (diff) | |
download | haskell-0a9b77b8b4313a9ffe7483cbc286d249fda59e75.tar.gz |
Create {Int,Word}32Rep
This prepares the way for making Int32# and Word32# the actual size they
claim to be.
Updates binary submodule for (de)serializing the new runtime reps.
Diffstat (limited to 'compiler/types')
-rw-r--r-- | compiler/types/TyCon.hs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/compiler/types/TyCon.hs b/compiler/types/TyCon.hs index 54a57cfc45..8068a5f666 100644 --- a/compiler/types/TyCon.hs +++ b/compiler/types/TyCon.hs @@ -1403,12 +1403,14 @@ data PrimRep | UnliftedRep -- ^ Unlifted pointer | Int8Rep -- ^ Signed, 8-bit value | Int16Rep -- ^ Signed, 16-bit value - | IntRep -- ^ Signed, word-sized value - | WordRep -- ^ Unsigned, word-sized value + | Int32Rep -- ^ Signed, 32-bit value | Int64Rep -- ^ Signed, 64 bit value (with 32-bit words only) + | IntRep -- ^ Signed, word-sized value | Word8Rep -- ^ Unsigned, 8 bit value - | Word16Rep -- ^ Unsigned, 16 bit value + | Word16Rep -- ^ Unsigned, 16 bit value + | Word32Rep -- ^ Unsigned, 32 bit value | Word64Rep -- ^ Unsigned, 64 bit value (with 32-bit words only) + | WordRep -- ^ Unsigned, word-sized value | AddrRep -- ^ A pointer, but /not/ to a Haskell value (use '(Un)liftedRep') | FloatRep | DoubleRep @@ -1455,9 +1457,11 @@ primRepSizeB dflags IntRep = wORD_SIZE dflags primRepSizeB dflags WordRep = wORD_SIZE dflags primRepSizeB _ Int8Rep = 1 primRepSizeB _ Int16Rep = 2 +primRepSizeB _ Int32Rep = 4 primRepSizeB _ Int64Rep = wORD64_SIZE primRepSizeB _ Word8Rep = 1 primRepSizeB _ Word16Rep = 2 +primRepSizeB _ Word32Rep = 4 primRepSizeB _ Word64Rep = wORD64_SIZE primRepSizeB _ FloatRep = fLOAT_SIZE primRepSizeB dflags DoubleRep = dOUBLE_SIZE dflags |