Construct array of given type and size, filling it with supplied contents. Type must be an array type. Array's contents must be single-word. Example: filled-new-array {vC, vD, vE, vF, vG}, type@BBBB.
More...
#include <dalvik_instructions.hpp>
|
| Instruction35c (std::vector< uint8_t > &bytecode, std::size_t index, Parser *parser) |
|
std::uint8_t | get_number_of_registers () const |
| Get the number of registers from the instruction.
|
|
const std::vector< std::uint8_t > & | get_registers () const |
| Get a constant reference to the vector with the registers.
|
|
TYPES::Operand | get_registers_type () |
| Get the type of the registers operand.
|
|
std::vector< std::uint8_t > & | get_registers () |
| Get a reference to the vector with the registers.
|
|
std::uint16_t | get_type_idx () const |
| Get the idx of the type.
|
|
TYPES::Operand | get_array_type () const |
| Get the type of the array.
|
|
DVMType * | get_dvmtype () |
| Get the DVMType of the array type.
|
|
MethodID * | get_method () |
|
virtual std::string | print_instruction () |
| Return a string with the representation of the instruction.
|
|
virtual void | print_instruction (std::ostream &os) |
| Print the instruction on a given stream.
|
|
| Instruction (std::vector< uint8_t > &bytecode, std::size_t index, dexinsttype_t instruction_type) |
| Constructor of the Instruction, here is applied the parsing of the opcodes.
|
|
| Instruction (std::vector< uint8_t > &bytecode, std::size_t index, dexinsttype_t instruction_type, std::uint32_t length) |
|
virtual | ~Instruction ()=default |
| Destructor of the instruction.
|
|
virtual TYPES::Kind | get_kind () const |
| Get the kind of instruction, use a DalvikOpcodes function.
|
|
virtual dexinsttype_t | get_instruction_type () const |
| Get the instruction type from the enum.
|
|
virtual std::uint32_t | get_instruction_length () const |
| Get the length of the instruction.
|
|
virtual std::uint32_t | get_instruction_opcode () const |
| Get the opcode of the instruction.
|
|
virtual void | set_address (std::uint64_t address) |
| Set the address of the instruction.
|
|
virtual std::uint64_t | get_address () const |
| Get the address of the instruction.
|
|
virtual const std::span< std::uint8_t > & | get_opcodes () |
| Return the op codes in raw from the instruction.
|
|
virtual bool | is_terminator () |
| Check if the instruction is a terminator (branch, ret, multibranch)
|
|
virtual bool | has_side_effects () const |
| Instruction has or can have some side effect.
|
|
virtual bool | may_throw () const |
| May throw an exception.
|
|
|
std::span< std::uint8_t > | op_codes |
| Opcodes of the instruction.
|
|
std::uint32_t | length |
| Length of the instruction.
|
|
std::uint32_t | op |
| op code from the instruction
|
|
std::uint64_t | address |
| address of the instruction
|
|
Construct array of given type and size, filling it with supplied contents. Type must be an array type. Array's contents must be single-word. Example: filled-new-array {vC, vD, vE, vF, vG}, type@BBBB.
◆ get_array_type()
TYPES::Operand KUNAI::DEX::Instruction35c::get_array_type |
( |
| ) |
const |
|
inline |
Get the type of the array.
- Returns
- return KIND type
◆ get_dvmtype()
DVMType * KUNAI::DEX::Instruction35c::get_dvmtype |
( |
| ) |
|
|
inline |
◆ get_number_of_registers()
std::uint8_t KUNAI::DEX::Instruction35c::get_number_of_registers |
( |
| ) |
const |
|
inline |
Get the number of registers from the instruction.
- Returns
- array_size value
◆ get_registers() [1/2]
std::vector< std::uint8_t > & KUNAI::DEX::Instruction35c::get_registers |
( |
| ) |
|
|
inline |
Get a reference to the vector with the registers.
- Returns
- reference to registers
◆ get_registers() [2/2]
const std::vector< std::uint8_t > & KUNAI::DEX::Instruction35c::get_registers |
( |
| ) |
const |
|
inline |
Get a constant reference to the vector with the registers.
- Returns
- constant reference to registers
◆ get_registers_type()
TYPES::Operand KUNAI::DEX::Instruction35c::get_registers_type |
( |
| ) |
|
|
inline |
Get the type of the registers operand.
- Returns
- return REGISTER type
◆ get_type_idx()
std::uint16_t KUNAI::DEX::Instruction35c::get_type_idx |
( |
| ) |
const |
|
inline |
Get the idx of the type.
- Returns
- value with the type index
◆ print_instruction() [1/2]
virtual std::string KUNAI::DEX::Instruction35c::print_instruction |
( |
| ) |
|
|
inlinevirtual |
Return a string with the representation of the instruction.
- Returns
- string with instruction
Reimplemented from KUNAI::DEX::Instruction.
◆ print_instruction() [2/2]
virtual void KUNAI::DEX::Instruction35c::print_instruction |
( |
std::ostream & |
os | ) |
|
|
inlinevirtual |
Print the instruction on a given stream.
- Parameters
-
os | stream where to print the instruction |
Reimplemented from KUNAI::DEX::Instruction.
The documentation for this class was generated from the following file: