| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 26 hours | fix jrcxz/jecxz/jcxz having "two operands" | iximeow | |
| 47 hours | push/pop width in 16/32-bit modes are receptive to operand width prefix | iximeow | |
| 2 days | and some prefix helpers should be pub | iximeow | |
| 2 days | j*cxz/pusha/popa alternate size forms | iximeow | |
| these all existed since forever but the library did not distinguish them and did not provide prefix information for users to tell which had been decoded. | |||
| 3 days | adapt long-mode behavior support to protected mode and real mode | iximeow | |
| along the way, fix an error: maskmov is memory read-write. additionally, operand information about {push,pop}a{,d}. | |||
| 3 days | gpr register size in real/protected mode | iximeow | |
| 3 days | disallow 66-prefixed sha1rnds4 | iximeow | |
| 3 days | pusha/popa/push-imm memory sizes | iximeow | |
| 3 days | helpers to create cr0-cr7 | iximeow | |
| 3 days | working through a bunch of avx512 stuff, regspec constructors are const | iximeow | |
| 3 days | pextr*/extractps | iximeow | |
| 3 days | report memory access size for "monitor" | iximeow | |
| 3 days | maskmov{q,dqu} memory access size | iximeow | |
| 3 days | more precise about 0f0d prefetch/nop | iximeow | |
| 3 days | fix table management instructions' ({l,s}{g,i,l}dt) mem_size | iximeow | |
| these instructions, it turns out, have fixed operand size based on CPU execution mode and regardless of prefixes. good to know! | |||
| 3 days | more accurate mov seg-to-gpr operand size | iximeow | |
| 3 days | push/pop for segment registers has implicit memory access | iximeow | |
| 3 days | pushf, popf, enter, leave, xlat all have implicit memory access | iximeow | |
| also add "is_masked" to operand spec | |||
| 3 days | add initial stats for disasm stats in all modes | iximeow | |
| 2026-02-14 | type aliases make some of these signatures less egregious.. | iximeow | |
| 2025-06-01 | describe the per-isa extensions a bit better | iximeow | |
| 2025-06-01 | revise_instruction is the same on all bitnesses, so macro it too | iximeow | |
| 2025-06-01 | DecodeEverything wasn't useful, no better than InstDecoder::default()?? | iximeow | |
| 2025-06-01 | expand isa feature selection to more bits | iximeow | |
| this is backed by the new IsaSettings trait. the existing InstDecoders are unchanged, except that they implement this new trait. also add new `DecodeEverything` structs with `IsaSettings` impls that are unconditionally set to permit anything the decoder can be configured to conditionally accept or reject. in the process, add new `_3dnow` flag and stop accepting 3dnow instructions in uarch-specific decoder settings that would not have 3dnow instructions. update AMD microarchitectures and cross-ref chip directory | |||
| 2024-06-24 | rename most operand variants, make them structy rather than tupley | iximeow | |
| 2024-06-23 | remove selects_cs(), cs() now does the right thing | iximeow | |
| 2024-06-23 | fix several sources of dead code warnings in various crate configs | iximeow | |
| 2024-06-23 | remove yaxpeax-x86 safer_unchecked.rs, it is now in yaxpeax-arch | iximeow | |
| 2024-06-23 | cfg_attr wants feature, not features plural | iximeow | |
| 2024-06-23 | InstructionTextBuffer for all three modes, adjust fuzzer to match | iximeow | |
| 2024-06-23 | add additional `call` test cases | iximeow | |
| fix 32-bit 66-prefixed ff /2 call not having 16-bit operands fix momentary regression in rendering `call` instructions to string | |||
| 2024-06-23 | fix inlining attributes re. profiling flag in protected_mode | iximeow | |
| 2024-06-23 | adapt the rest of formating changes to protected_mode | iximeow | |
| 2024-06-23 | fix AbsoluteFarAddress being tagged as a memory operand | iximeow | |
| 2024-06-23 | adapt OperandVisitor to protected mode too | iximeow | |
| 2024-06-23 | actually use new can_lock in 32b and 16b modes | iximeow | |
| 2024-06-23 | port opcode helpers and reordering to 32-bit and 16-bit decoders | iximeow | |
| 2024-06-23 | add more conditional inlining for 32-bit and 16-bit decoders | iximeow | |
| 2023-12-16 | fix hreset being disassembled as having second operand of "Nothing" | iximeow | |
| just report it having one operand... | |||
| 2023-07-24 | fix handling of lar/lsl source register | iximeow | |
| 2023-07-23 | fix + better test cvttsd2si+cvtsd2si (misdecode under 64-bit) | iximeow | |
| 2023-07-16 | unify 64-/32-bit more | iximeow | |
| 2023-07-16 | forward changes along to 32-bit decoder... | iximeow | |
| 2023-03-05 | add `Opcode::is_jcc`, `Opcode::is_setcc`, and `Opcode::is_cmovcc` helpers | iximeow | |
| this request/suggestion comes from [github](https://github.com/iximeow/yaxpeax-x86/issues/29)! thank you! | |||
| 2023-02-19 | deprecate `pub fn cs`, which is an intensely embarrassing bug of a function | iximeow | |
| unlike every other function to test if a particular selector is picked by prefixes, `Prefixes::cs` does not return bool, nor does it check the currently-selected prefix. instead, it modifies the decoded `Prefixes` to set the current prefix to `cs`. this has been a bug all the way since 0.0.1 was released. the function now does nothing, and is marked deprecated. in a future 2.x release, the function will be changed to return `bool` and be in-line with other segment selector-checking functions. in the mean time, a new `Prefixes::selects_cs()` does the correct thing. thank you to @meithecatte who pointed this out in https://github.com/iximeow/yaxpeax-x86/issues/28! | |||
| 2022-12-03 | roll up decoding loop changes for 16-bit and 32-bit decoders | iximeow | |
| this applies * f338c74656f6eef8b3080fa9f249b1cb733fd1a9 * bece19e6a69b158893abbf56a6cac25eb25d9a32 * 6353f58170d28a142e3b012c2c86f684d50dea45 * 67be1c0983244645a3c762b7aa0601f0d0ba4bb3 * 091f1d66ef853d6339a96e43d71c137ee7d3907a as one unit to both the 16-bit and 32-bit decoders. | |||
| 2022-12-03 | apply e7f49509 to 16-bit and 32-bit decoders | iximeow | |
| 2022-12-03 | apply 2444de11 to 16-bit and 32-bit decoders | iximeow | |
| these don't need the extra `rex`-supporting index space, so they don't have it. | |||
| 2022-09-23 | Fix some typos. | Bruce Mitchener | |
| 2022-04-30 | support 0x9a callf in 16/32-bit modes | iximeow | |
