CallingConvention Type
Provides a set of functions to obtain calling convention information for different architectures. This includes the list of volatile registers, the register used for syscall return values, and the register used for syscall numbers.
Static members
| Static member |
Description
|
Full Usage:
CallingConvention.FunctionArgRegister(hdl, os, num)
Parameters: Returns: int<MeasureProduct<T, MeasureOne>>
|
Obtains the register ID used for the nth function call parameter. Since actual calling convention may vary depending on the binaries, this function only returns a generally used register for the given architecture and the file format.
|
Full Usage:
CallingConvention.IsNonVolatile(hdl, os, rid)
Parameters:
BinHandle
os : OS
rid : int<MeasureProduct<T, MeasureOne>>
Returns: bool
|
Checks if the given register is non-volatile register in the given binary. Non-volatile registers are preserved by callee, i.e., callee-saved registers.
|
Full Usage:
CallingConvention.ReturnRegister(hdl)
Parameters:
BinHandle
Returns: int<MeasureProduct<T, MeasureOne>>
|
Obtains the register ID used for storing syscall return values.
|
Full Usage:
CallingConvention.SyscallArgRegister(hdl, os, num)
Parameters: Returns: int<MeasureProduct<T, MeasureOne>>
|
Obtains the register ID used for the nth syscall parameter.
|
Full Usage:
CallingConvention.SyscallNumRegister(hdl)
Parameters:
BinHandle
Returns: int<MeasureProduct<T, MeasureOne>>
|
Obtains the register ID used for storing a syscall number.
|
Full Usage:
CallingConvention.VolatileRegisters(hdl)
Parameters:
BinHandle
Returns: int<MeasureProduct<T, MeasureOne>>[]
|
Obtains the list of volatile register IDs
|
B2R2