Index of modules


A
Annot
All these functions find the nodes needed for various kind of annotations.

B
Body_datatype [PdgTypes.Pdg]
BoolNodeSet [Build]
set of nodes of the graph
Build
Build graphs (PDG) for the function (see module Build.BuildPdg) to represente the dependencies between instructions in order to use it for slicing purposes.
BuildAll [Pdg_parameters]
BuildFct [Pdg_parameters]

C
Computer [Build]
CtrlDpds
Lexical successors

D
Data_state [PdgTypes]
DotBasename [Pdg_parameters]
Dpd [PdgTypes]
Edges label for the Program Dependence Graph.
DpdZone [PdgTypes]

E
E [PdgTypes.Pdg.Printer]
E [PdgTypes.G]

F
F_Fct [PdgMarks]
If the marks provided by the user respect some constraints (see Mark), we have that, after the marks propagation, the mark of a node are always smaller than the sum of the marks of its dependencies.
F_Proj [Marks]
To also use interprocedural propagation, the user can instantiate this functor.
FctIndex [PdgIndex]
Mapping between the function elements we are interested in and some information.

G
G [PdgTypes]
The graph itself.

H
H [PdgIndex]

K
Key [PdgIndex]
The keys can be used to identify an element of a function.

L
LOffset [Lmap_bitwise.Location_map_bitwise]
Lexical_successors [CtrlDpds]
Compute a graph which provide the lexical successor of each statement s, ie.
LocInfo [PdgTypes]

M
M [PdgMarks.Config]
Marks
compute the marks to propagate in the caller nodes from the marks of a function inputs in_marks.

N
Node [PdgTypes]
Node.t is the type of the PDG vertex.
NodeSet [PdgTypes]
NodeSetLattice [PdgTypes]
set of nodes of the graph

O
OneDir [PdgTypes.G]

P
P [Pdg_state]
Pdg [PdgTypes]
PDG for a function
PdgIndex
This module can be useful to store some information about different elements of a function.
PdgMarks
This file provides useful things to help to associate an information (called mark) to PDG elements and to propagate it across the dependencies.
PdgPostdom [CtrlDpds]
This backward dataflow implements a variant of postdominators that verify the property P enunciated in bts 963: a statement postdominates itself if and only it is within the main path of a syntactically infinite loop.
PdgTypes
This module defines the types that are used to store the PDG of a function.
Pdg_parameters
Pdg_state
DataState is associated with a program point and provide the dependancies for the data, ie.
PrintBw [Pdg_parameters]
PrintG [PdgTypes.Pdg]
Printer [PdgTypes.Pdg]

R
RKey [PdgIndex]
Register
Register external functions into Db.

S
Sets
Provides function to extract information from the PDG.
Signature [PdgIndex]
What we call a Signature a mapping between keys that represent either a function input or output, and some information.
Str_descr [PdgIndex.Signature]

T
Tbl [Register]
To [PdgTypes.G]

V
V [PdgTypes.Pdg.Printer]