## 0.1.2 * fix some instructions in aarch64 decoding panicking with "unreachable" instead of returning an `Err(DecodeError::Incomplete)`. similarly, some instructions panicked instead of returning `InvalidOpcode` or `InvalidOperand` as they should. * fix some instructions in armv7 decoding or display panicking instead of displaying a valid instruction, or returning a decode error. ## 0.1.1 * fix incorrect `yaxpeax_arch::Arch` impl for `std`-enabled builds (DecodeError did not implement `std::error::Error` in those build environments) ## 0.1.0 * target yaxpeax-arch 0.2.0 ## 0.0.6 * fix incorrect markdown in README.md ## 0.0.5 * add thumb/thumb2 decoders these decoders are considered "mostly correct" and "mostly complete". notably, system instructions are less well-tested (particularly `mrs`, `cps`, and similar), and the NEON extensions are still unsupported. NEON in particular yield `DecodeError::Incomplete`. if you, the user, see `Incomplete`, that is a `yaxpeax-arm` error! `yaxpeax-arm` differs from the ARM manual's assembly syntax in a few ways: * `.w` suffixes are best-effort. * `addw`/`subw` are written `add.w`/`sub.w` for consistency with other wide instructions. * `adr` with added/subtracted offset are shown as `add`/`sub` * testing is not as exhaustive as is possible for ARM; errors may yet exist at this time, if-then instructions (`IT`) are decoded, but the decoder has no notion of "in an `IT` block or not", so following conditional instructions are not yet conditional. this all said, for armv4/thumb decoding, the implementation here is probably close to correct. for armv6+/thumb2, aside from these notes, the implementation here is ... hopefully ... close to correct. * add clear rules by which `yaxpeax-arm` will be versioned 0.1 or 1.0. (see README) ## 0.0.4 * bump yaxpeax-arch, no functional change ## 0.0.3 `Instruction`, `Opcode`, and `Operand` are now a useful model of decoded operations. * `Operands`, plural, the enum of operands in the instruction, is now gone in favor of `Operand` that describe one operand of the instruction * `Instruction` no longer include operand attributes like "add", "index", or "wback" * better (not quite complete) support for non-user instructions and coprocessor instructions * instructions operating on status registers through masks are now directly supported * first brush of arm-version-specific decoder feature selection * fix several preindex/postindex reversals ## 0.0.2 last revison that's sufficient for disassembly and really nothing else