]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
KVM: x86: Add emulator support for decoding VEX prefixes
authorPaolo Bonzini <pbonzini@redhat.com>
Fri, 14 Nov 2025 00:36:32 +0000 (19:36 -0500)
committerSean Christopherson <seanjc@google.com>
Wed, 19 Nov 2025 22:36:52 +0000 (14:36 -0800)
commitf0585a714a7531afaa23b3351a316f61ccaa7b00
tree043d8b9b95bd5ea8a303d9ebba036a3848f2097c
parent825f0aece084ecde02805083d44d08ab189a9249
KVM: x86: Add emulator support for decoding VEX prefixes

After all the changes done in the previous patches, the only thing
left to support AVX MOV instructions is to expand the VEX prefix into
the appropriate REX, 66/F3/F2 and map prefixes.  Three-operand
instructions are not supported.

The Avx bit in this case is not cleared, in fact it is used as the
sign that the instruction does support VEX encoding.  Until it is
added to any instruction, however, the only functional change is
to change some not-implemented instructions to #UD if they correspond
to a VEX prefix with an invalid map.

Co-developed-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Link: https://patch.msgid.link/20251114003633.60689-10-pbonzini@redhat.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/emulate.c