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] |