DexInstruction Struct Reference
List of all members.
Public Attributes |
|
dx_ubyte | opcode |
| | The opcode for this instruction.
|
|
dx_ubyte | hi_byte |
| | The high byte in the leading byte of the instruction.
|
| dx_ushort | param [2] |
|
union { |
| dx_long constant |
| dx_int target |
| ref_str * str |
| ref_str * type |
| struct { |
| ref_str * defining_class |
| ref_str * name |
| ref_str * type |
| } field |
| struct { |
| ref_str * defining_class |
| ref_str * name |
| ref_strstr * prototype |
| } method |
| dx_uint inline_ind |
| dx_uint object_off |
| dx_uint vtable_ind |
| struct { |
| dx_ushort size |
| | The number of targets in this switch.
|
| dx_int first_key |
| | The first and smallest key.
|
| dx_int * targets |
| | The branch targets relative to the invoking instruction.
|
| } packed_switch |
| struct { |
| dx_ushort size |
| | The number of targets in this switch.
|
| dx_int * keys |
| | The keys in this switch. These should be sorted in ascending order.
|
| dx_int * targets |
| | The branch targets relative to the invoking instruction.
|
| } sparse_switch |
| struct { |
| dx_ushort element_width |
| | The width of the elements in the data array.
|
| dx_uint size |
| | The number of elements in this table.
|
| dx_ubyte * data |
| } fill_data_array |
| } | special |
| | See DexOpSpecialType for details on what fields are used.
|
Member Data Documentation
A buffer of element_width * size bytes representing the data to be filled in.
Present when the opcode is OP_PSUEDO and the psuedo opcode is PSUEDO_OP_FILL_DATA_ARRAY.
Present when the opcode is OP_PSUEDO and the psuedo opcode is PSUEDO_OP_PACKED_SWITCH.
Represents bytes 1 and 2 for the instruction. Note that if the bytes represent a special value they will automatically be ignored in this array and instead the value in the special union will be used.
Present when the opcode is OP_PSUEDO and the psuedo opcode is PSUEDO_OP_SPARSE_SWITCH.
The documentation for this struct was generated from the following file: