angr.analyses.data_dep.data_dependency_analysis¶
Defines analysis that will generate a dynamic data-dependency graph
- class angr.analyses.data_dep.data_dependency_analysis.NodalAnnotation¶
Bases:
AnnotationAllows a node to be stored as an annotation to a BV in a DefaultMemory instance
- __init__(node)¶
- Parameters:
node (BaseDepNode)
- property eliminatable¶
Can not be eliminated in a simplification
- class angr.analyses.data_dep.data_dependency_analysis.DataDependencyGraphAnalysis¶
Bases:
AnalysisThis is a DYNAMIC data dependency graph that utilizes a given SimState to produce a DDG graph that is accurate to the path the program took during execution.
This analysis utilizes the SimActionData objects present in the provided SimState’s action history to generate the dependency graph.
- __init__(end_state, start_from=None, end_at=None, block_addrs=None)¶
- Parameters:
end_state (
SimState) – Simulation state used to extract all SimActionDatastart_from (
int|None) – An address or None, Specifies where to start generation of DDGend_at (
int|None) – An address or None, Specifies where to end generation of DDGblock_addrs (
list[int] |None) – List of block addresses that the DDG analysis should be run on
- get_data_dep(g_node, include_tmp_nodes, backwards)¶
- Return type:
DiGraph|None- Parameters:
g_node (BaseDepNode)
include_tmp_nodes (bool)
backwards (bool)