foxdec-0.1.0.0: Formally Verified x86-64 Decompilation
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Indirection

Synopsis

Documentation

data JumpTable Source #

A jump table with : index: an operand containing a bounded index at the beginning of execution of the block bound: the bound on idx trgt: the operand containg the jump target at the end of execution of the block tbl: a table from values of idx to resulting jump targets

Instances

Instances details
Generic JumpTable Source # 
Instance details

Defined in Data.Indirection

Associated Types

type Rep JumpTable :: Type -> Type #

Show JumpTable Source # 
Instance details

Defined in Data.Indirection

Serialize JumpTable Source # 
Instance details

Defined in Data.Indirection

NFData JumpTable Source # 
Instance details

Defined in Data.Indirection

Methods

rnf :: JumpTable -> () #

Eq JumpTable Source # 
Instance details

Defined in Data.Indirection

Ord JumpTable Source # 
Instance details

Defined in Data.Indirection

type Rep JumpTable Source # 
Instance details

Defined in Data.Indirection

type Rep JumpTable = D1 ('MetaData "JumpTable" "Data.Indirection" "foxdec-0.1.0.0-DGuc5MMkhbvOBLAebyTd5" 'False) (C1 ('MetaCons "JumpTable" 'PrefixI 'True) ((S1 ('MetaSel ('Just "jtbl_index") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Operand) :*: S1 ('MetaSel ('Just "jtbl_bound") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)) :*: (S1 ('MetaSel ('Just "jtbl_target") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Operand) :*: S1 ('MetaSel ('Just "jtbl_table") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IntMap Word64)))))

data Indirection Source #

An indirection is either a jump table or a set of resolved jump targets

Instances

Instances details
Generic Indirection Source # 
Instance details

Defined in Data.Indirection

Associated Types

type Rep Indirection :: Type -> Type #

Show Indirection Source # 
Instance details

Defined in Data.Indirection

Serialize Indirection Source # 
Instance details

Defined in Data.Indirection

NFData Indirection Source # 
Instance details

Defined in Data.Indirection

Methods

rnf :: Indirection -> () #

Eq Indirection Source # 
Instance details

Defined in Data.Indirection

Ord Indirection Source # 
Instance details

Defined in Data.Indirection

type Rep Indirection Source # 
Instance details

Defined in Data.Indirection

type Rep Indirection = D1 ('MetaData "Indirection" "Data.Indirection" "foxdec-0.1.0.0-DGuc5MMkhbvOBLAebyTd5" 'False) (C1 ('MetaCons "Indirection_JumpTable" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 JumpTable)) :+: (C1 ('MetaCons "Indirection_Resolved" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ResolvedJumpTarget)) :+: C1 ('MetaCons "Indirection_Unresolved" 'PrefixI 'False) (U1 :: Type -> Type)))