Pin
|
Public Member Functions | |
virtual UINT32 | NumOfElements () const =0 |
virtual USIZE | ElementSize (UINT32 element_index) const =0 |
virtual UINT32 | ElementMaskValue (UINT32 element_index) const =0 |
virtual UINT32 | ElementOffset (UINT32 element_index) const =0 |
virtual ADDRINT | ElementAddress (UINT32 element_index) const =0 |
virtual VOID | SetElementAddress (UINT32 element_index, ADDRINT address)=0 |
Used in instruction rewrite for operands with scattered memory access.
|
pure virtual |
Return element effective address
|
pure virtual |
Return element mask value - 0 or 1.
If the instruction has no active mask - 1 is returned.
If the mask register is a KMASK then 1 is returned if the N'th bit in the mask is set.
If the mask register is a vector register then 1 is returned if the high bit of the N'th mask element (size of mask element depends on the instruction) is set.
|
pure virtual |
Return element offset in bytes from the beginning of the register to the specified element.
This function should be used only for register operands and will result in Pin error if used for memory operands.
Users may use the returned offset on buffers received IARG_REG_REFERENCE/IARG_REG_CONST_REFERENCE
|
pure virtual |
Return element size in bytes
|
pure virtual |
Return number of memory operand elements
|
pure virtual |
Set new element effective address