angr.code_location¶
- class angr.code_location.CodeLocation¶
Bases:
GenericStands for a specific program point by specifying basic block address and statement ID (for IRSBs), or SimProcedure name (for SimProcedures).
- __init__(block_addr, stmt_idx, sim_procedure=None, ins_addr=None, context=None, block_idx=None, **kwargs)¶
Constructor.
- Parameters:
block_addr (
TypeVar(BlockAddr, bound=int|None)) – Address of the blockstmt_idx (
TypeVar(StmtIdx, bound=int|None)) – Statement ID. None for SimProcedures or if the code location is meant to refer to the entire block.sim_procedure (class) – The corresponding SimProcedure class.
context (
TypeVar(Context)) – A tuple that represents the context of this CodeLocation in contextual mode, or None in contextless mode.kwargs – Optional arguments, will be stored, but not used in __eq__ or __hash__.
block_idx (int | None)
- block_addr
- stmt_idx
- sim_procedure
- ins_addr
- context
- block_idx
- property short_repr¶
- class angr.code_location.ExternalCodeLocation¶
Bases:
CodeLocationStands for a program point that originates from outside an analysis’ scope. i.e. a value loaded from rdi in a callee where the caller has not been analyzed.
- call_string
- class angr.code_location.AILCodeLocation¶
Bases:
objectA code location that refers precisely to a statement of an AIL block, with an optional instruction address.
- addr: int
- stmt_idx: int
- static from_codeloc(codeloc)¶
- Return type:
- Parameters:
codeloc (CodeLocation)
- property bbl_addr¶
- property block_addr¶
- property ins_addr¶