| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Kempe.IR.Type
Description
IR loosely based on Appel book.
Documentation
Constructors
| Labeled Label | |
| Jump Label | |
| CJump Exp Label Label | |
| MJump Exp Label | |
| CCall MonoStackType ByteString | |
| KCall Label | |
| WrapKCall ABI MonoStackType ByteString Label | |
| MovTemp Temp Exp | |
| MovMem Exp Int64 Exp | |
| Ret |
Instances
Constructors
Instances
Instances
| Eq RelBinOp Source # | |
| Generic RelBinOp Source # | |
| NFData RelBinOp Source # | |
Defined in Kempe.IR.Type | |
| Pretty RelBinOp Source # | |
Defined in Kempe.IR.Type | |
| type Rep RelBinOp Source # | |
Defined in Kempe.IR.Type type Rep RelBinOp = D1 ('MetaData "RelBinOp" "Kempe.IR.Type" "kempe-0.1.1.2-inplace-kempe-modules" 'False) ((C1 ('MetaCons "IntEqIR" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "IntNeqIR" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "IntLtIR" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "IntGtIR" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "IntLeqIR" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "IntGeqIR" 'PrefixI 'False) (U1 :: Type -> Type)))) | |
Constructors
| IntPlusIR | |
| IntTimesIR | |
| IntDivIR | |
| IntMinusIR | |
| IntModIR | |
| IntXorIR | |
| WordShiftRIR | |
| WordShiftLIR | |
| WordModIR | |
| WordDivIR |
Instances
Instances
| Eq BoolBinOp Source # | |
| Generic BoolBinOp Source # | |
| NFData BoolBinOp Source # | |
Defined in Kempe.IR.Type | |
| Pretty BoolBinOp Source # | |
Defined in Kempe.IR.Type | |
| type Rep BoolBinOp Source # | |
Defined in Kempe.IR.Type type Rep BoolBinOp = D1 ('MetaData "BoolBinOp" "Kempe.IR.Type" "kempe-0.1.1.2-inplace-kempe-modules" 'False) (C1 ('MetaCons "BoolAnd" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BoolOr" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BoolXor" 'PrefixI 'False) (U1 :: Type -> Type))) | |
Constructors
| Temp64 !Int | |
| Temp8 !Int | |
| DataPointer |
Instances
| Eq Temp Source # | |
| Generic Temp Source # | |
| NFData Temp Source # | |
Defined in Kempe.IR.Type | |
| Pretty Temp Source # | |
Defined in Kempe.IR.Type | |
| type Rep Temp Source # | |
Defined in Kempe.IR.Type type Rep Temp = D1 ('MetaData "Temp" "Kempe.IR.Type" "kempe-0.1.1.2-inplace-kempe-modules" 'False) (C1 ('MetaCons "Temp64" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)) :+: (C1 ('MetaCons "Temp8" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)) :+: C1 ('MetaCons "DataPointer" 'PrefixI 'False) (U1 :: Type -> Type))) | |