aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoriximeow <me@iximeow.net>2022-05-30 09:32:40 -0700
committeriximeow <me@iximeow.net>2022-05-30 09:32:43 -0700
commit093781f2652416c28927c76b9ada05ba6450b330 (patch)
tree0b100027631311dfdd1a4d96881fc387e920c46d
parent8ce99ef32e1db656138bb95ab57506100ffd6fdd (diff)
pshufb annotations use incorrect register banks (for now?)
the correct bank is applied far after register numbers are read. a correct annotation would need to know to defer emission until setting register banks, but also would need to work backwards for the number of bits between the current byte and modrm. not impossible, but substantial refactoring.
-rw-r--r--test/long_mode/descriptions.rs1
1 files changed, 1 insertions, 0 deletions
diff --git a/test/long_mode/descriptions.rs b/test/long_mode/descriptions.rs
index c319e0b..34db079 100644
--- a/test/long_mode/descriptions.rs
+++ b/test/long_mode/descriptions.rs
@@ -323,6 +323,7 @@ fn test_modrm_decode() {
desc.to_string().contains("mod bits: 11")
}),
AnnotationCheck::exact(32, 34, InnerDescription::RegisterNumber("mmm", 1, RegSpec::ecx())),
+ AnnotationCheck::exact(35, 37, InnerDescription::RegisterNumber("rrr", 0, RegSpec::eax())),
AnnotationCheck::no_extra(),
]);