x86emul: unconditionally deliver #UD for LWP insns

This is to accompany commit 91f86f8634 ("x86/svm: Drop support for AMD's
Lightweight Profiling").

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
This commit is contained in:
Jan Beulich committed 2019-07-23 16:52:19 +02:00
1 parent 0d10a77cc9
commit ca5ecd9207
1 file changed
+20
+20
View File
@@ -10525,6 +10525,16 @@ x86_emulate(
}
goto unrecognized_insn;
case X86EMUL_OPC_XOP(09, 0x12): /* XOP Grp3 */
switch ( modrm_reg & 7 )
{
case 0: /* llwpcb r */
case 1: /* slwpcb r */
/* LWP is unsupported, so produce #UD unconditionally. */
generate_exception(EXC_UD);
}
goto unrecognized_insn;
case X86EMUL_OPC_XOP(09, 0x82): /* vfrczss xmm/m128,xmm */
case X86EMUL_OPC_XOP(09, 0x83): /* vfrczsd xmm/m128,xmm */
generate_exception_if(vex.l, EXC_UD);
@@ -10609,6 +10619,16 @@ x86_emulate(
break;
}
case X86EMUL_OPC_XOP(0a, 0x12): /* XOP Grp4 */
switch ( modrm_reg & 7 )
{
case 0: /* lwpins $imm32,r/m,r */
case 1: /* lwpval $imm32,r/m,r */
/* LWP is unsupported, so produce #UD unconditionally. */
generate_exception(EXC_UD);
}
goto unrecognized_insn;
default:
unimplemented_insn:
rc = X86EMUL_UNIMPLEMENTED;
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.