aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
15 hourspextr*/pinsr*/insertps/extrps immediate is now u8 instead of i8iximeow
15 hoursfix seam, user-ipi, {rd,wr}{fs,gs}base instructions decoding outside 64b modeiximeow
15 hoursset up dumpbin/masm for properly assmbling and parsing in 16/32-bit modesiximeow
15 hoursfix vgatherdpd using incorrect simd vector width for gather indicesiximeow
15 hoursfix vpbroadcast* memory size and source register bankiximeow
15 hoursadd MASM-style formatting support in all modesiximeow
this includes a mildly nightmarish bit of test harness to compare against ml.exe/ml64.exe/dumpbin.exe, which in turn chased out a bunch of bugs. yay!
14 daysthe weird 64b movq thing was a capstone bug all along?!iximeow
14 days64-bit: vex-prefix register extension..iximeow
14 daysfix several instructions' incorrect memory or op2 sizeiximeow
14 daysrename rne-sae to rn-saeiximeow
14 daysfix mnemonics for prefetcht*iximeow
14 daysreworking how tests work: more modular nowiximeow
this hopefully gets testcases closer to a point where one could simply write a program that dumps test bytes and expected disassembly. more immediately, this is a structure to dangle an optioanl masm-style disassembly of an instruction for testing that imminent addition too.
14 daysfeature gate kvm tests to linuxiximeow
14 daysuseless use of unsafeiximeow
14 daysMake invalid instruction constructors actually return invalid instructionsSamuel Arnold
As opposed to nops.
2026-05-262.1.12.1.1iximeow
2026-05-26fix jrcxz/jecxz/jcxz having "two operands"iximeow
2026-05-252.1.0 is real!iximeow
2026-05-25push/pop width in 16/32-bit modes are receptive to operand width prefixiximeow
2026-05-25dont clobber test VM control state in tests..iximeow
2026-05-25reject arpl in 16-bit decodingiximeow
2026-05-25reword changelogiximeow
2026-05-25and some prefix helpers should be pubiximeow
2026-05-25j*cxz/pusha/popa alternate size formsiximeow
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.
2026-05-25enable internal asserts during fuzzingiximeow
2026-05-25adapt long-mode behavior support to protected mode and real modeiximeow
along the way, fix an error: maskmov is memory read-write. additionally, operand information about {push,pop}a{,d}.
2026-05-25add behavior information for x86_64 instructionsiximeow
this is a squash of a few months' hacking, including but not limited to what eventually got extracted into https://git.iximeow.net/asmlinator/about/ the path here is generally not historically interesting, and the vast majority of this diff is very particular static data tables (BehaviorDigests and implicit operand lists) `src/long_mode/behavior.rs` will more or less be directly adapted into versions for x86-32 and x86-16, similar to the instruction decoders.
2026-05-2566-prefixed sha1rnds4 doesnt even realiximeow
2026-05-25gpr register size in real/protected modeiximeow
2026-05-25disallow 66-prefixed sha1rnds4iximeow
2026-05-25pusha/popa/push-imm memory sizesiximeow
2026-05-25helpers to create cr0-cr7iximeow
2026-05-25working through a bunch of avx512 stuff, regspec constructors are constiximeow
2026-05-25pextr*/extractpsiximeow
2026-05-25feature guard for key lockeriximeow
2026-05-25invept precisioniximeow
2026-05-25more precision for vinsert/vextract/vblendv{ps,pd}iximeow
2026-05-25actually support avx/f16c in per-uarch decodingiximeow
2026-05-25vmaskmovdqu, vmovq were also incorrect in some ways...iximeow
2026-05-25more general avx improvementsiximeow
2026-05-25cleanup pass on vex-encoded instructions is going to be excitingiximeow
2026-05-25report memory access size for "monitor"iximeow
2026-05-25maskmov{q,dqu} memory access sizeiximeow
2026-05-25more precise about 0f0d prefetch/nopiximeow
2026-05-25fix table management instructions' ({l,s}{g,i,l}dt) mem_sizeiximeow
these instructions, it turns out, have fixed operand size based on CPU execution mode and regardless of prefixes. good to know!
2026-05-25more accurate mov seg-to-gpr operand sizeiximeow
2026-05-25push/pop for segment registers has implicit memory accessiximeow
2026-05-25pushf, popf, enter, leave, xlat all have implicit memory accessiximeow
also add "is_masked" to operand spec
2026-05-25add initial stats for disasm stats in all modesiximeow
2026-05-25goodfile should use shas directly for local untagged refsiximeow