@@ -182,7 +182,7 @@ nullValue :: C.Constant
182182nullValue = C.Null (PointerType valueType (AddrSpace 0))
183183
184184primTy :: Type -> Type
185−primTy inner = StructureType False [IntegerType 8, inner]
185+primTy inner = StructureType False [IntegerType 32, inner]
186186
187187mpzTy :: Type
188188mpzTy = NamedTypeReference (Name "mpz")
@@ -385,9 +385,9 @@ cgExpr (SChkCase inspect alts) = do
385385 isNull <- inst $ ICmp IPred.EQ val (ConstantOperand nullValue) []
386386 terminate $ CondBr isNull endBBN notNullBBN []
387387 newBlock notNullBBN
388− ptr <- inst $ BitCast val (PointerType (IntegerType 8) (AddrSpace 0)) []
388+ ptr <- inst $ BitCast val (PointerType (IntegerType 32) (AddrSpace 0)) []
389389 flag <- inst $ Load False ptr Nothing 0 []
390− isVal <- inst $ ICmp IPred.EQ flag (ConstantOperand (C.Int 8 (-1))) []
390+ isVal <- inst $ ICmp IPred.EQ flag (ConstantOperand (C.Int 32 (-1))) []
391391 conBBN <- getName "constructor"
392392 terminate $ CondBr isVal endBBN conBBN []
393393 newBlock conBBN
@@ -630,7 +630,7 @@ box fty fval = do
630630 val <- alloc (primTy (ftyToTy fty))
631631 tagptr <- inst $ GetElementPtr True val [ConstantOperand (C.Int 32 0), ConstantOperand (C.Int 32 0)] []
632632 valptr <- inst $ GetElementPtr True val [ConstantOperand (C.Int 32 0), ConstantOperand (C.Int 32 1)] []
633− inst' $ Store False tagptr (ConstantOperand (C.Int 8 (-1))) Nothing 0 []
633+ inst' $ Store False tagptr (ConstantOperand (C.Int 32 (-1))) Nothing 0 []
634634 inst' $ Store False valptr fval Nothing 0 []
635635 inst $ BitCast val (PointerType valueType (AddrSpace 0)) []
636636