Age | Commit message (Collapse) | Author |
|
|
|
|
|
operand-clearing should be removable but is a stopgap for decoding only clearing a few entries
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
also remove several bounds checks, surprisingly ineffective
|
|
|
|
this breaks all of how Operand are used, but its faster, so its impossible to say,
|
|
|
|
|
|
|
|
|
|
explicitly number some OperandCode so their variants can be reused,
factor out other code which turns out to be helpful for code size and
performance reasons. reorder some arguments for read_E/read_M because it
seems to have made a small improvement.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
opcode data tables made consistent. apologies for the mem::transmutes,
that's to avoid an extra load and strongly guide the compiler towards
doing a u16 load.
also fix issue where byte iter was a ref to a ref, and other small
changes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fix issue where non-relevant prefixes on 0f opcodes may cause incorrect invalid decodes
|