Crate yaxpeax_avr[][src]

Expand description

AVR decoders implemented as part of the yaxpeax project. Implements traits provided by yaxpeax-arch.

Instruction set manual references are with respect to the document Atmel-0856-AVR-Instruction-Set-Manual.pdf as of 2020-04-13. sha256: dbf578218c9f52f2fd22ccc538f53b9db4890320835725678c02b7b58f641981

References to the ATmega48A/PA/88A/PA/168A/PA/328/P datasheet are with respect to the document ATmega48A-PA-88A-PA-168A-PA-328-P-DS-DS40002061A.pdf as of 2020-04-13. sha256: bf1c2e470f8ec7d4db340984f57556342557fed3eb9c457dd174b08db5993af6

Known “issues”:

  • The brbc and brbs instructions are displayed as their equivalent pseudo-instructions, based on the bit they test: brbc 0, label becomes brsh label. In this case specifically, brcc also exists (and is identical), however brsh will be displayed.
  • Target specification is limited to enabling/disabling support for 16-bit sts and lds instructions (as they can collide with other instructions cores with support for them don’t have). Valid instructions (even if they might be unsupported by a core) are never rejected. Bytes which don’t resemble an instruction from any instruction set subset are still invalid.

Structs

Enums