-type CmmActual = CmmExpr
-type CmmActuals = [(CmmActual,MachHint)]
-type CmmFormal = LocalReg
-type CmmHintFormals = [(CmmFormal,MachHint)]
-type CmmFormals = [CmmFormal]
+type CmmKind = MachHint
+data CmmKinded a = CmmKinded { kindlessCmm :: a, cmmKind :: CmmKind }
+ deriving (Eq)
+type CmmActual = CmmKinded CmmExpr
+type CmmFormal = CmmKinded LocalReg
+type CmmActuals = [CmmActual]
+type CmmFormals = [CmmFormal]
+type CmmFormalWithoutKind = LocalReg
+type CmmFormalsWithoutKinds = [CmmFormalWithoutKind]
+