|
Pin
|
Functions | |
| UINT32 | BBL_NumIns (BBL bbl) |
| INS | BBL_InsHead (BBL x) |
| INS | BBL_InsTail (BBL x) |
| BBL | BBL_Next (BBL x) |
| BBL | BBL_Prev (BBL x) |
| BOOL | BBL_Valid (BBL x) |
| BOOL | BBL_Original (BBL bbl) |
| ADDRINT | BBL_Address (BBL bbl) |
| USIZE | BBL_Size (BBL bbl) |
| VOID | BBL_InsertCall (BBL bbl, IPOINT action, AFUNPTR funptr,...) |
| VOID | BBL_InsertIfCall (BBL bbl, IPOINT action, AFUNPTR funptr,...) |
| VOID | BBL_InsertThenCall (BBL bbl, IPOINT action, AFUNPTR funptr,...) |
| BOOL | BBL_HasFallThrough (BBL bbl) |
| ADDRINT BBL_Address | ( | BBL | bbl | ) |
| BOOL BBL_HasFallThrough | ( | BBL | bbl | ) |
Refer to INS_HasFallThrough for checking if an instruction could have a fall-through path based on the opcode.
| VOID BBL_InsertCall | ( | BBL | bbl, |
| IPOINT | action, | ||
| AFUNPTR | funptr, | ||
| ... | |||
| ) |
Insert call relative to a bbl.
| bbl | BBL: Single entrance, single exit sequence of instructions to instrument |
| action | Specifies before, after, etc. IPOINT_BEFORE is always valid for all BBLs. IPOINT_AFTER is valid only when a fall-through exists. Can only be used if BBL_HasFallThrough is true. IPOINT_ANYWHERE will put the instrumentation at a place inside the bbl for best performance. IPOINT_TAKEN_BRANCH is valid only when the BBL ends with a control-flow instruction. Can only be used if INS_IsValidForIpointTakenBranch(BBL_ins_tail(bbl)) is true. |
| funptr | Analysis function to call |
| ... | IARG_TYPE. Arguments to pass to funptr |
| VOID BBL_InsertIfCall | ( | BBL | bbl, |
| IPOINT | action, | ||
| AFUNPTR | funptr, | ||
| ... | |||
| ) |
Insert a call to funptr relative to a BBL. If funptr returns a non-zero ADDRINT, then the immediately following "then" analysis call is executed. Note that if CALL_ORDER is used, Both "if" and "then" analysis calls must have the same order.
| bbl | BBL to instrument |
| action | Specifies when the analysis call executes. See the documentation in BBL_InsertCall(). |
| funptr | Analysis function to call. Its return type must be ADDRINT |
| ... | IARG_TYPE. Arguments to pass to funptr |
| VOID BBL_InsertThenCall | ( | BBL | bbl, |
| IPOINT | action, | ||
| AFUNPTR | funptr, | ||
| ... | |||
| ) |
Insert a call to funptr relative to a BBL. The function is called only if the immediately preceding "if" analysis call returns a non-zero value. Note that if CALL_ORDER is used, Both "if" and "then" analysis calls must have the same order.
| bbl | BBL to instrument |
| action | Specifies when the analysis call executes. See the documentation in BBL_InsertCall(). |
| funptr | Analysis function to call |
| ... | IARG_TYPE. Arguments to pass to funptr |
| INS BBL_InsHead | ( | BBL | x | ) |
| INS BBL_InsTail | ( | BBL | x | ) |
| BBL BBL_Next | ( | BBL | x | ) |
| UINT32 BBL_NumIns | ( | BBL | bbl | ) |
This file contains BBL: Single entrance, single exit sequence of instructions primitives
Number of INSs within a BBL.
| BOOL BBL_Original | ( | BBL | bbl | ) |
| BBL BBL_Prev | ( | BBL | x | ) |
| USIZE BBL_Size | ( | BBL | bbl | ) |
| BOOL BBL_Valid | ( | BBL | x | ) |
1.8.17