x86emul: support ENQCMD insns
authorJan Beulich <jbeulich@suse.com>
Fri, 29 May 2020 15:32:55 +0000 (17:32 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 29 May 2020 15:32:55 +0000 (17:32 +0200)
commitd273859687415f5b36dde976d43e04162aeadfdc
tree82e01d43a39cc9dd7c11c171b92ede09a6a4480a
parenta9ecb9e780e2373c53b469f81ea54db19b9378dd
x86emul: support ENQCMD insns

Note that the ISA extensions document revision 038 doesn't specify
exception behavior for ModRM.mod == 0b11; assuming #UD here.

No tests are being added to the harness - this would be quite hard,
we can't just issue the insns against RAM. Their similarity with
MOVDIR64B should have the test case there be god enough to cover any
fundamental flaws.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
tools/tests/x86_emulator/predicates.c
tools/tests/x86_emulator/x86-emulate.h
xen/arch/x86/arch.mk
xen/arch/x86/x86_emulate/x86_emulate.c
xen/include/asm-x86/cpufeature.h
xen/include/asm-x86/msr-index.h
xen/include/public/arch-x86/cpufeatureset.h