ProgramPoint Type
Represents a specific location in a lifted program. We represent this as a three-tuple: (address of the instruction, index of the IR stmt for the instruction, call site information). The third element (call site) is optional and only meaningful for abstract vertices.
Constructors
| Constructor |
Description
|
Full Usage:
ProgramPoint(callsite, addr, pos)
Parameters:
CallSite
addr : uint64
pos : int
Returns: ProgramPoint
|
Constructs an abstract program point at the given address and IR statement index, associated with the given call site information.
|
|
Constructs a program point at the given address and IR statement index, with no call site.
|
Instance members
| Instance member |
Description
|
|
Gets the address of the instruction.
|
|
Gets the call site if this program point refers to an abstract vertex.
|
|
|
Full Usage:
this.IsFake
Returns: bool
|
Checks if this is a fake program point.
|
|
Returns the next program point by incrementing the position by one. If this is a fake program point, it is returned as-is.
|
Full Usage:
this.Position
Returns: int
|
Gets the index of the IR statement within the instruction.
|
Static members
| Static member |
Description
|
|
Returns a fake program point to represent a fake vertex, which does not exist in a CFG. Fake vertices are useful for representing external function calls and their nodes in the SCFG.
|
B2R2