aboutsummaryrefslogtreecommitdiff
path: root/CHANGELOG
diff options
context:
space:
mode:
authoriximeow <me@iximeow.net>2021-01-15 18:15:04 -0800
committeriximeow <me@iximeow.net>2021-01-15 18:21:19 -0800
commitd8083b08dc987adeda73fb13298383c6cf519596 (patch)
treee6e4f19b631d26c547551d9168fda81476de2c1e /CHANGELOG
parentdd88df2b9769630f8eafe909e00eb3a3a21c954e (diff)
small perf tweaks
clearing reg_rrr and reg_mmm more efficiently is an extremely small win, but a win read_imm_signed generally should inline well and runs afoul of some heuristic. inlining gets about 8% improved throughput on the (unrealistic) in-repo benchmark it would be great to be able to avoid bounds checks somehow; it looks like they alone are another ~10% of decode time. i'm not sure how to pull that off while retaining the generic iterator parameter. might just not be possible.
Diffstat (limited to 'CHANGELOG')
-rw-r--r--CHANGELOG2
1 files changed, 2 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 1325597..c608941 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -3,6 +3,8 @@
- AMD-only `monitorx`, `mwaitx`, `clzero`, and `rdpru` are now supported
- `swapgs` is invalid in non-64-bit modes
- `rdpkru` and `wrpkru` were incorrectly decoded when modrm bits were not `11`
+* small performance tweaks. read_imm_signed is now inline(always) and some
+ pre-decode initialization is a bit better-packed
## 0.1.4
* [long mode only]: fix decoding of rex-prefixed modrm+sib operands selecting index 0b100 and base 0b101