]> git.proxmox.com Git - mirror_qemu.git/commitdiff
target/i386: REPZ and REPNZ are mutually exclusive
authorPaolo Bonzini <pbonzini@redhat.com>
Wed, 24 Aug 2022 15:44:45 +0000 (17:44 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 19 Sep 2022 13:16:00 +0000 (15:16 +0200)
The later prefix wins if both are present, make it show in s->prefix too.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
target/i386/tcg/translate.c

index 5f31a59fb8f603d17d099feaf88e0fb5f938242a..eaa56b0f4884a5b301f1a14a4b27d67bda181052 100644 (file)
@@ -4733,9 +4733,11 @@ static target_ulong disas_insn(DisasContext *s, CPUState *cpu)
     switch (b) {
     case 0xf3:
         prefixes |= PREFIX_REPZ;
+        prefixes &= ~PREFIX_REPNZ;
         goto next_byte;
     case 0xf2:
         prefixes |= PREFIX_REPNZ;
+        prefixes &= ~PREFIX_REPZ;
         goto next_byte;
     case 0xf0:
         prefixes |= PREFIX_LOCK;