Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-07-08 | fix v(p)gather situations, get vex tests passing again | iximeow | |
2023-07-05 | fix operand handling for the psl/psr family of xmm shifts/rotates | iximeow | |
these instructions ignored rex bits even for xmm reigsters, which is incorrect (so says xed) | |||
2023-07-04 | two more test cases | iximeow | |
2023-07-04 | fix some dancing between bank size and RegisterBank enum values | iximeow | |
in the process, fixed a decoding bug dealing with a0/a1/a2/a3 movs (respected rex.b when rex.b should have been ignored) this seems to maybe improve runtime ever so slightly, but this is really meant as a cleanup commit more than anything. | |||
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! | |||
2022-05-30 | pshufb annotations use incorrect register banks (for now?) | iximeow | |
the correct bank is applied far after register numbers are read. a correct annotation would need to know to defer emission until setting register banks, but also would need to work backwards for the number of bits between the current byte and modrm. not impossible, but substantial refactoring. | |||
2022-05-07 | more annotation fixes? | iximeow | |
2022-05-01 | add testing setup for field descriptions | 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-12 | fuzz DisplayStyle::C and fix corresponding issues1.1.4 | iximeow | |
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-12-17 | do not panic on negative compressed displacements, i mean it!! | iximeow | |
2021-12-16 | displacements are stored as unsigned, but are functionally signed ints | iximeow | |
so multiplying to expand EVEX compressed offsets can overflow, and that needs to be okay. | |||
2021-10-10 | support endbr{32,64} | iximeow | |
2021-08-21 | fix negative relative branches (again!!! +- is bad!!!) | iximeow | |
2021-08-21 | fix incorrect decoding of 0x9*-series instructions with rex.b | 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 | relative branches should be shown as $+offset, not just plain offset | iximeow | |
while x86 branches of immediates are all relative to PC, other architectures may have absolute branches to immediate addresses, leaving this syntax ambiguous and potentially confusing. yaxpeax prefers to write relative offsets `$+...` as a rule, so uphold that here. | |||
2021-07-22 | fix incorrect decodes with scas and 67-prefixes1.0.4 | iximeow | |
2021-07-04 | support vpscatter{dd,dq,qd,qq} | iximeow | |
2021-07-04 | support avx512 registers >=16 | iximeow | |
2021-07-04 | handle vzeroupper/vzeroall, reject vzero* with nonzero vvvv | iximeow | |
2021-07-04 | support xacquire/xrelease prefixing | iximeow | |
2021-07-04 | fix several incorrect tests and docs in 64- and 32-bit modes | 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 | support AMD `sev_snp` | iximeow | |
2021-07-03 | instructions with evex-coded registers may have registers other than 0 | iximeow | |
2021-07-03 | enforce reserved evex prefix bits | iximeow | |
2021-07-03 | add hreset | iximeow | |
2021-07-03 | support pconfig/tme | iximeow | |
2021-07-01 | reallocate OperandCode, convert disparate registers to array | iximeow | |
also remove redundant assignments of operand_count and some OperandSpec, bulk-assign all registers and operands on entry to `read_instr`. this all, taken together, shaves off about 7 cycles per decode. | |||
2021-06-27 | add randomized testing against incorrect data in reused instructions | iximeow | |
2021-06-27 | all tests now passing for long mode | iximeow | |
2021-06-27 | report memory sizes for all long-mode instructions | iximeow | |
2021-06-26 | clean up avx2-related warnings | iximeow | |
2021-06-26 | add long-mode avx512 support, except for compressed displacements | iximeow | |
2021-06-12 | finish up long mode avx2 | iximeow | |
2021-06-11 | add extensive avx and initial avx2 tests, fix several bugs and missing ↵ | iximeow | |
instructions | |||
2021-03-21 | include memory sizes on inc/dec in C format | iximeow | |
2021-03-21 | add tsxldtrk | iximeow | |
does intel know no bounds | |||
2021-03-21 | xed says setssbsy and saveprevssp are more permissive | iximeow | |
2021-03-21 | add missing vpmaxuw, remove nonsense avx mov | iximeow | |
2021-03-21 | complete CET support, add UINTR, add missing VORP{S,D}, other cleanup | iximeow | |
2021-03-21 | add waitpkg, clean up unused values, old comments | iximeow | |
2021-03-21 | add tdx | iximeow | |
decoder flag to come |