Bases: object
This class interfaces the assembler/disassembler support
Bases: object
This class represents an assembly instruction
Bases: Flag
Address of the instruction
Given a is_branch
instruction, try to evaluate the address of the destination.
True if the instruction performs an arithmetic addition.
True if the instruction prevents executing the instruction that immediatly follows the current. This includes return or unconditional branch instructions
True if the instruction is doing a bitcast
True if the instruction is a branch
True if the instruction is a call
True if the instruction is a comparison
True if the instruction is conditionally jumping to the next instruction or an instruction into some other basic block.
True if the instruction is and indirect branch.
This includes instructions that branch through a register (e.g. jmp rax
, br x1
).
True if the instruction performs a memory access
True if the instruction is moving an immediate
True if the instruction is a register to register move.
True if the instruction is a return
True if the instruction is a syscall
True if the instruction marks the end of a basic block
True if the instruction is a trap.
On x86/x86-64
this includes the ud1/ud2
instructions
On AArch64
this includes the brk/udf
instructions
True if the instruction is jumping (unconditionally) to some other basic block.
Memory access flags
Instruction mnemonic (e.g. br
)
Raw bytes of the current instruction
Size of the instruction in bytes
Representation of the current instruction in a pretty assembly way