Age | Commit message (Collapse) | Author | |
---|---|---|---|
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 | |
2022-04-24 | fix a few issues preventing no-std builds from ... building | iximeow | |
this includes a `Makefile` that exercises the various crate configs. most annoyingly, several doc comments needed to grow `#[cfg(feature="fmt")]` blocks so docs continue to build with that feature enabled or disabled. carved out a way to run exhaustive tests; they should be written as `#[ignore]`, and then the makefile will run even ignored tests on the expectation that this will run the exhaustive (but slower) suite. exhaustive tests are not yet written. they'll probably involve spanning 4 byte sequences from 0 to 2^32-1. | |||
2022-01-02 | Wrap unsafe functions to catch errors in debug | 5225225 | |
Closes https://github.com/iximeow/yaxpeax-x86/issues/16 | |||
2021-12-19 | fix incorrect memory size for f30f1e-style nop | iximeow | |
not only did the instruction have wrong data, but if displayed, the formatter would panic. | |||
2021-12-19 | test that invalid RegSpec constructions panic as expected | iximeow | |
in the process, fix 64-bit rex-byte limit, 32/16-bit mode mask reg limit | |||
2021-10-10 | support endbr{32,64} | iximeow | |
2021-10-10 | export `InstructionDisplayer` (#9) | i509VCB | |
This makes generated docs refer to a type and show said type in the list of all structs rather than rustdoc showing gray text in return types. quote doc references | |||
2021-08-22 | bump to yaxpeax-arch 0.2.7 and proper field description support1.1.0 | iximeow | |
2021-08-22 | add 16/32-bit opcode/operand boundary desc, consistentify memory descriptions | iximeow | |
2021-08-21 | add `AnnotatingDecoder` note to CHANGELOG and publicize descriptions | iximeow | |
2021-08-21 | add descriptions for other prefixes, 16-bit addressing | iximeow | |
2021-08-21 | add description reporting for segment prefixes and opcodes for 32-bit and 16-bit | iximeow | |
2021-08-21 | extend decoder annotation through all of 64-, 32-, and 16-bit modes | iximeow | |
2021-08-21 | extend annotation reporting to 32- and 16-bit modes, kinda | iximeow | |
2021-08-21 | add push/pop/call/ret mem_size fixes to changelog | iximeow | |
2021-08-21 | clarify inaccurate 32/16-bit `call/jmp [mem]` mem_size | iximeow | |
2021-08-21 | report memory sizes for push, pop, call, ret | iximeow | |
these instructions had memory sizes reported for the operand, if it was a memory operand, but for versions with non-memory operands the decoded `Instruction` would imply that non memory access would happen at all. now, decoded instructions in these cases will report a more useful memory size. | |||
2021-08-14 | delcare pub const fn constructors for all gp registers, segment registers, ↵ | iximeow | |
and ip/flags | |||
2021-07-22 | fix incorrect decodes with scas and 67-prefixes1.0.4 | iximeow | |
2021-07-04 | update yaxpeax-arch to 0.2.0 and update DecodeError impls | iximeow | |
2021-07-04 | update crate to rust 2018 | iximeow | |
2021-07-04 | support xacquire/xrelease prefixing | iximeow | |
2021-07-04 | 16-bit addressing in protected mode may see avx512 masks too | iximeow | |
2021-07-04 | fix several incorrect tests and docs in 64- and 32-bit modes | iximeow | |
2021-07-03 | update protected_mode to match long_mode docs, apis | iximeow | |
2021-07-03 | update DecodeError impls | iximeow | |
2021-07-03 | document public members in long_mode | iximeow | |
2021-07-03 | write some dang docs, export `MemoryAccessSize` where you'll look for it | iximeow | |
2021-07-03 | more carefully test mmx operand sizes | iximeow | |
2021-07-03 | factor out MemoryAccessSize | iximeow | |
2021-07-03 | add tests for MemoryAccessSize, consistentify style on docs | iximeow | |
2021-07-03 | be more strict about denying invalid operands | iximeow | |
2021-07-03 | do not reject prefixed sgdt, add a TODO for xop | iximeow | |
not that xop will ever be wanted, rip | |||
2021-07-03 | support AMD `sev_snp` | iximeow | |
2021-07-03 | clean up x86_32 and make interfaces match x86_64 | iximeow | |