Module yaxpeax_arm::armv7

source ·
Expand description

yaxpeax-arm’s ARMv7 decoder and Arch implementation.


  • a struct with a summary of the ARMv7 instruction set in an associated impl Arch for ARMv7.
  • a control register.
  • a struct for the combined display of an opcode and possible suffixes.
  • a struct with decode configuration for ARMv7 and below. the same decoder is used for thumb and non-thumb modes, and the same instruction struct is used for decoded instructions in either mode.
  • a armv7 or below instruction.
  • a context impl to display arm instructions with no additional context (no symbol name information, offset names, etc). this impl results in some_instruction.contextualize(...) displaying an instruction the same way its Display impl would.
  • a struct describing an arm register.
  • a register shifted by an immediate.
  • a register shifted by a register.
  • a struct describiing a shifted register operand. this is primarily interesting in that it can be translated to a RegShiftStyle for further interpretation.


  • a register bank for a register in armv7 or below.
  • a condition code for am armv7 or below instruction.
  • the kinds of errors possibly encountered in trying to decode an armv7 or below instruction.
  • an operand in an arm instruction.
  • an enum describing one of two ways a shifted register operand may be shifted.
  • the way a shift operation is carried out.