|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] x86emul: correct #UD check for AVX512-FP16 complex multiplications
commit a30d438ce58b70c5955f5d37f776086ab8f88623
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Mon Aug 19 15:32:31 2024 +0200
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Mon Aug 19 15:32:31 2024 +0200
x86emul: correct #UD check for AVX512-FP16 complex multiplications
avx512_vlen_check()'s argument was inverted, while the surrounding
conditional wrongly forced the EVEX.L'L check for the scalar forms when
embedded rounding was in effect.
Fixes: d14c52cba0f5 ("x86emul: handle AVX512-FP16 complex multiplication
insns")
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Acked-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
xen/arch/x86/x86_emulate/x86_emulate.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/xen/arch/x86/x86_emulate/x86_emulate.c
b/xen/arch/x86/x86_emulate/x86_emulate.c
index 34b0b0fe73..3c5f9ce309 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -7852,8 +7852,8 @@ x86_emulate(
generate_exception_if(modrm_reg == src1 ||
(ea.type != OP_MEM && modrm_reg == modrm_rm),
X86_EXC_UD);
- if ( ea.type != OP_REG || (b & 1) || !evex.brs )
- avx512_vlen_check(!(b & 1));
+ if ( ea.type != OP_REG || !evex.brs )
+ avx512_vlen_check(b & 1);
goto simd_zmm;
}
--
generated by git-patchbot for /home/xen/git/xen.git#master
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |