angr.knowledge_plugins.key_definitions.rd_model¶
- class angr.knowledge_plugins.key_definitions.rd_model.ReachingDefinitionsModel¶
Bases:
objectModels the definitions, uses, and memory of a ReachingDefinitionState object
- __init__(func_addr=None, track_liveness=True)¶
- add_def(d)¶
- Return type:
- Parameters:
d (Definition)
- kill_def(d)¶
- Return type:
- Parameters:
d (Definition)
- at_new_stmt(codeloc)¶
- Return type:
- Parameters:
codeloc (CodeLocation)
- at_new_block(code_loc, pred_codelocs)¶
- Return type:
- Parameters:
code_loc (CodeLocation)
pred_codelocs (list[CodeLocation])
- find_defs_at(code_loc, op=ObservationPointType.OP_BEFORE)¶
- Return type:
- Parameters:
code_loc (CodeLocation)
op (int)
- get_defs(atom, code_loc, op)¶
- Return type:
- Parameters:
atom (Atom)
code_loc (CodeLocation)
op (int)
- copy()¶
- Return type:
- merge(model)¶
- Parameters:
model (ReachingDefinitionsModel)
- get_observation_by_insn(ins_addr, kind)¶
- Return type:
- Parameters:
ins_addr (int | CodeLocation)
kind (ObservationPointType)
- get_observation_by_node(node_addr, kind, node_idx=None)¶
- Return type:
- Parameters:
node_addr (int | CodeLocation)
kind (ObservationPointType)
node_idx (int | None)
- get_observation_by_stmt(arg1, arg2, arg3=None, *, block_idx=None)¶
- Overloads:
self, codeloc (CodeLocation), kind (ObservationPointType) → LiveDefinitions | None
self, node_addr (int), stmt_idx (int), kind (ObservationPointType), block_idx (int | None)