Skip to content

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 22 Jun 12:16
· 74 commits to main since this release
+ Added JMP rel8 and Jcc rel8 (short jumps) to the encoder and decoder.
+ Added missing Jcc mnemonics: JO, JNO, JS, JNS, JP, JNP.
+ The parser now accepts `db`/`dw`/`dd`/`dq` without a leading dot.

Added

  • Short jumps — JMP rel8 (0xEB) and all 16 Jcc rel8 (0x70–0x7F) are now supported in the decoder and encoder.
  • New mnemonicsjo, jno, js, jns, jp, jnp with aliases (jpe, jpo, jc, jnc, etc.).
  • Missing Jcc rel320x0F 0x80–0x8B for JO, JNO, JS, JNS, JP, JNP (two-byte opcodes).
  • Directives without a dotdb, dw, dd, dq work without a leading . (for example, db 0x90 instead of .byte 0x90).

Fixed

  • The decoder 0xC7 now correctly accepts the register form (mod=11) for MOV r64, imm32.
  • format_memory no longer outputs [rbp + -0x8]; the negative offset shows the - sign.
  • decode_memory returns scale: None if there is no index case.
  • #[derive(Debug)]added to CodegenOutput and DecodedInstruction.