Hit this on Arch, which uses Python 3 as default interpreter. The scripts should either call `/usr/bin/python2` instead of just `/usr/bin/python` or this script must be updated. The proposed change(s) in particular:
* `dict.iteritems()` has been replaced by `dict.items()`, which returns a lazy view instead. `itemslist()` resolves this.
This change makes sse prefixes (that disambiguate 2+ opcode bytes
instructions) act like rest of the opcode extensions. Importantly,
see prefix tables are now created towards the lower part of the
opcode tree.
However, note that SSE prefixes *must* be evaluated before the
operand size based disambiguation. This is because one the sse
prefix is consumed, it is discarded. So, in the case of the 66
prefix, which doubles as operand size override, it must be
consumed before operand size disambiguation.
- Fixes: documentation
- Adds: support for pextrb
Additionally,
- Add support for new operand type MbRv, since
in pextrb, if the target operand is a register
the default operand size is 64bit (in 64bit mode)
- Add pextrd, pextrq
- Add test cases for the above