From: Todd Eisenberger Date: Thu, 28 Sep 2017 17:17:06 +0000 (-0700) Subject: x86: Correct translation of some rdgsbase and wrgsbase encodings X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=e0dd5fd41a1a38766009f442967fab700d2d0550;p=qmiga%2Fqemu.git x86: Correct translation of some rdgsbase and wrgsbase encodings It looks like there was a transcription error when writing this code initially. The code previously only decoded src or dst of rax. This resolves https://bugs.launchpad.net/qemu/+bug/1719984. Signed-off-by: Todd Eisenberger Message-Id: Reviewed-by: Richard Henderson Signed-off-by: Eduardo Habkost --- diff --git a/target/i386/translate.c b/target/i386/translate.c index a8986f4c1a..7b920115f9 100644 --- a/target/i386/translate.c +++ b/target/i386/translate.c @@ -8155,9 +8155,9 @@ static target_ulong disas_insn(DisasContext *s, CPUState *cpu) break; case 0xc0 ... 0xc7: /* rdfsbase (f3 0f ae /0) */ - case 0xc8 ... 0xc8: /* rdgsbase (f3 0f ae /1) */ + case 0xc8 ... 0xcf: /* rdgsbase (f3 0f ae /1) */ case 0xd0 ... 0xd7: /* wrfsbase (f3 0f ae /2) */ - case 0xd8 ... 0xd8: /* wrgsbase (f3 0f ae /3) */ + case 0xd8 ... 0xdf: /* wrgsbase (f3 0f ae /3) */ if (CODE64(s) && (prefixes & PREFIX_REPZ) && !(prefixes & PREFIX_LOCK)