From d7059fd7375be449aed2f3cd6adf7ae14dbfefbd Mon Sep 17 00:00:00 2001 From: Aleksandar Markovic Date: Mon, 19 Aug 2019 14:08:15 +0200 Subject: target/mips: tests/tcg: Add optional printing of more detailed failure info There is a need for printing input and output data for failure cases, for debugging purpose. This is achieved by this patch, and only if a preprocessor constant is manually set to 1. (Assumption is that the need for such printout is relatively rare.) Signed-off-by: Aleksandar Markovic Reviewed-by: Aleksandar Rikalo Message-Id: <1566216496-17375-37-git-send-email-aleksandar.markovic@rt-rk.com> --- tests/tcg/mips/include/test_utils_128.h | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'tests/tcg') diff --git a/tests/tcg/mips/include/test_utils_128.h b/tests/tcg/mips/include/test_utils_128.h index 2fea610..0dd3868 100644 --- a/tests/tcg/mips/include/test_utils_128.h +++ b/tests/tcg/mips/include/test_utils_128.h @@ -27,7 +27,8 @@ #include #include -#define PRINT_RESULTS 0 +#define PRINT_RESULTS 0 +#define PRINT_FAILURES 0 static inline int32_t check_results_128(const char *isa_ase_name, @@ -65,6 +66,26 @@ static inline int32_t check_results_128(const char *isa_ase_name, (b128_result[2 * i + 1] == b128_expect[2 * i + 1])) { pass_count++; } else { +#if PRINT_FAILURES + uint32_t ii; + uint64_t a, b; + + printf("\n"); + + printf("FAILURE for test case %d!\n", i); + + memcpy(&a, (b128_expect + 2 * i), 8); + memcpy(&b, (b128_expect + 2 * i + 1), 8); + printf("Expected result : { 0x%016llxULL, 0x%016llxULL, },\n", + a, b); + + memcpy(&a, (b128_result + 2 * i), 8); + memcpy(&b, (b128_result + 2 * i + 1), 8); + printf("Actual result : { 0x%016llxULL, 0x%016llxULL, },\n", + a, b); + + printf("\n"); +#endif fail_count++; } } -- cgit v1.1