<feed xmlns='http://www.w3.org/2005/Atom'>
<title>yaxpeax-x86, branch 1.2.2</title>
<subtitle>yaxpeax x86 decoder</subtitle>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/'/>
<entry>
<title>version bump for 1.2.2</title>
<updated>2023-12-17T00:13:17+00:00</updated>
<author>
<name>iximeow</name>
<email>me@iximeow.net</email>
</author>
<published>2023-12-17T00:13:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/commit/?id=9a120cc76a49e5aadb0454f3ec4e89a6bff15a5d'/>
<id>9a120cc76a49e5aadb0454f3ec4e89a6bff15a5d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix hreset being disassembled as having second operand of "Nothing"</title>
<updated>2023-12-17T00:12:25+00:00</updated>
<author>
<name>iximeow</name>
<email>me@iximeow.net</email>
</author>
<published>2023-12-17T00:12:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/commit/?id=58913fc4e1bb153fe9d8735164ef922f71c2fa97'/>
<id>58913fc4e1bb153fe9d8735164ef922f71c2fa97</id>
<content type='text'>
just report it having one operand...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
just report it having one operand...
</pre>
</div>
</content>
</entry>
<entry>
<title>fix incorrect register class names in long_mode</title>
<updated>2023-12-16T23:54:25+00:00</updated>
<author>
<name>iximeow</name>
<email>me@iximeow.net</email>
</author>
<published>2023-12-16T23:54:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/commit/?id=83b12fc09a69cc5324f6f002b8c52382d4b236d1'/>
<id>83b12fc09a69cc5324f6f002b8c52382d4b236d1</id>
<content type='text'>
also adjust changelog for a 1.2.1 version again, no new interfaces to go
with these bugfixes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
also adjust changelog for a 1.2.1 version again, no new interfaces to go
with these bugfixes.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix incorrect register selection for `vpbroadcastm{b2q,w2d}` with `rex.b` set</title>
<updated>2023-12-16T23:24:26+00:00</updated>
<author>
<name>iximeow</name>
<email>me@iximeow.net</email>
</author>
<published>2023-12-16T23:24:26+00:00</published>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/commit/?id=2db223a16d1559c152170fe2a602c827a5a95fb3'/>
<id>2db223a16d1559c152170fe2a602c827a5a95fb3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix incorrect register selection for `vpmov*2m` with `rex.r` set</title>
<updated>2023-12-16T23:05:08+00:00</updated>
<author>
<name>iximeow</name>
<email>me@iximeow.net</email>
</author>
<published>2023-12-16T23:05:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/commit/?id=d7d84b3be6c929ee9d1b425a82b7121936a7cd34'/>
<id>d7d84b3be6c929ee9d1b425a82b7121936a7cd34</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix incorrect register selection for `vpmovm2*` with `rex.b` set</title>
<updated>2023-12-16T22:47:02+00:00</updated>
<author>
<name>iximeow</name>
<email>me@iximeow.net</email>
</author>
<published>2023-12-16T22:47:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/commit/?id=2d303b6121e318e30572dd1134ddb0cf12bd0776'/>
<id>2d303b6121e318e30572dd1134ddb0cf12bd0776</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>abnormal memory sizes for keylocker instructions are not bugs</title>
<updated>2023-12-16T22:44:07+00:00</updated>
<author>
<name>iximeow</name>
<email>me@iximeow.net</email>
</author>
<published>2023-12-16T22:12:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/commit/?id=4d2e196e616162726c6211abc46c043078425322'/>
<id>4d2e196e616162726c6211abc46c043078425322</id>
<content type='text'>
new `does_not_decode_invalid_registers` fuzzer found other bugs! the
384-bit accesses for 128b keylocker instructions are an
otherwise-unknown size and had a memory size of `BUG`. they are not
bugs. give the memory size a real name.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
new `does_not_decode_invalid_registers` fuzzer found other bugs! the
384-bit accesses for 128b keylocker instructions are an
otherwise-unknown size and had a memory size of `BUG`. they are not
bugs. give the memory size a real name.
</pre>
</div>
</content>
</entry>
<entry>
<title>reword new changelog entries</title>
<updated>2023-12-16T22:12:01+00:00</updated>
<author>
<name>iximeow</name>
<email>me@iximeow.net</email>
</author>
<published>2023-12-16T22:12:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/commit/?id=fafbd6d37329e4b9fd862ed86767a943086334be'/>
<id>fafbd6d37329e4b9fd862ed86767a943086334be</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix opportunity for unhandled register synonyms</title>
<updated>2023-12-16T21:26:48+00:00</updated>
<author>
<name>iximeow</name>
<email>me@iximeow.net</email>
</author>
<published>2023-12-16T21:26:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/commit/?id=110f797005cca70e18cbcc0975397d26d8045245'/>
<id>110f797005cca70e18cbcc0975397d26d8045245</id>
<content type='text'>
registers `al`, `cl`, `dl`, and `bl` could have two different
representations - with `rex.w` and without. these two forms of `RegSpec`
would not compare equal, nor has the same, so for code relying on
`RegSpec` to faithfully represent a 1-1 mapping to x86 registers, these
synonyms would introduce bugs in register analysis.

for example, in `yaxpeax-core`, this would result in instructions
writing to `rex.w al` not being visible as definitions for a future
read of `!rex.w al`.

fix this in `x86_64` code, add new test cases about the confusion,
adjust register names to make this situation more clearly a bug, and
introduce two new fuzz targets that would have helped spot this error.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
registers `al`, `cl`, `dl`, and `bl` could have two different
representations - with `rex.w` and without. these two forms of `RegSpec`
would not compare equal, nor has the same, so for code relying on
`RegSpec` to faithfully represent a 1-1 mapping to x86 registers, these
synonyms would introduce bugs in register analysis.

for example, in `yaxpeax-core`, this would result in instructions
writing to `rex.w al` not being visible as definitions for a future
read of `!rex.w al`.

fix this in `x86_64` code, add new test cases about the confusion,
adjust register names to make this situation more clearly a bug, and
introduce two new fuzz targets that would have helped spot this error.
</pre>
</div>
</content>
</entry>
<entry>
<title>update changelog, bump version number for future publish</title>
<updated>2023-12-16T01:56:31+00:00</updated>
<author>
<name>iximeow</name>
<email>me@iximeow.net</email>
</author>
<published>2023-12-16T01:56:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.iximeow.net/yaxpeax-x86/commit/?id=85668b222582ef1edae537beea452d5e1c933389'/>
<id>85668b222582ef1edae537beea452d5e1c933389</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
