Closed tokatoka closed 9 months ago
oh that's a good catch. this is a bug. in all of those expansions (for Q
, D
, W
, and rB
), r12 and r13 should have register numbers 12 and 13. those macros expand out to const constructors like RegSpec::r12d()
, so the consequence of this typo is that RegSpec::r12d
will actually produce a RegSpec
that prints as r8d
.
the display impl, for example, uses that number directly: https://github.com/iximeow/yaxpeax-x86/blob/no-gods-no-/src/long_mode/display.rs#L110-L113
if you'd like to post a patch i'll merge it and do a release, or i can get to it later today
oh i see https://github.com/tokatoka/yaxpeax-x86/commit/6016dc5e9d051771eea242e51412f874294cf491, i'll pull that, add some tests, and off we go
ok 👍
ok! this and some other small issues i'd noticed along the way are now published as 1.2.2
.
Sorry if this is on purpose.
My question is why register r12 and r13 have the register number of 8 and 9 here? https://github.com/iximeow/yaxpeax-x86/blob/no-gods-no-/src/long_mode/mod.rs#L293
Shouldn't this part be
?