[PATCH] x86emul/test: improve failure location identification for FMA sub-test

Jan Beulich posted 1 patch 1 year, 10 months ago
Failed in applying to current master (apply log)
[PATCH] x86emul/test: improve failure location identification for FMA sub-test
Posted by Jan Beulich 1 year, 10 months ago
When some FMA set of insns is included in the base instruction set (XOP,
AVX512F, and AVX512-FP16 at present), simd_test() simply invokes
fma_test(), negating its return value. In case of a failure this would
yield a value close to 4G, which doesn't lend itself to easy
identification of the failing test case. Recognize the case in
simd_check_regs() and emit alternative output identifying FMA.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/tools/tests/x86_emulator/test_x86_emulator.c
+++ b/tools/tests/x86_emulator/test_x86_emulator.c
@@ -259,7 +259,10 @@ static bool simd_check_regs(const struct
 {
     if ( !regs->eax )
         return true;
-    printf("[line %u] ", (unsigned int)regs->eax);
+    if ( (int)regs->eax > 0 )
+        printf("[line %u] ", (unsigned int)regs->eax);
+    else
+        printf("[FMA line %u] ", (unsigned int)-regs->eax);
     return false;
 }
Re: [PATCH] x86emul/test: improve failure location identification for FMA sub-test
Posted by Andrew Cooper 1 year, 10 months ago
On 14/06/2022 17:03, Jan Beulich wrote:
> When some FMA set of insns is included in the base instruction set (XOP,
> AVX512F, and AVX512-FP16 at present), simd_test() simply invokes
> fma_test(), negating its return value. In case of a failure this would
> yield a value close to 4G, which doesn't lend itself to easy
> identification of the failing test case. Recognize the case in
> simd_check_regs() and emit alternative output identifying FMA.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>