[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC PATCH] tests/tcg: drop -cpu max from s390x sha512-mvx invocatio

From: Thomas Huth
Subject: Re: [RFC PATCH] tests/tcg: drop -cpu max from s390x sha512-mvx invocation
Date: Thu, 10 Mar 2022 11:41:16 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.6.0

On 10/03/2022 11.34, Alex Bennée wrote:

Thomas Huth <thuth@redhat.com> writes:

On 09/03/2022 12.22, Alex Bennée wrote:
With -cpu max we get a warning:
    qemu-s390x: warning: 'msa5-base' requires 'kimd-sha-512'.
But dropping the -cpu max and it still runs fine.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Cc: Thomas Huth <thuth@redhat.com>
   tests/tcg/s390x/Makefile.target | 2 --
   1 file changed, 2 deletions(-)
diff --git a/tests/tcg/s390x/Makefile.target
index 257c568c58..7aa502a557 100644
--- a/tests/tcg/s390x/Makefile.target
+++ b/tests/tcg/s390x/Makefile.target
@@ -34,6 +34,4 @@ sha512-mvx: CFLAGS=-march=z13 -mvx -O3
   sha512-mvx: sha512.c
        $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS)
   -run-sha512-mvx: QEMU_OPTS+=-cpu max

Ok, this helps to get rid of the warnings, thus feel free to add:

Tested-by: Thomas Huth <thuth@redhat.com>

However, the error still persists. I now had a closer look by running
the test with "qemu-s390x" on my z15 machine directly, and all tests
are failing! The problem happens with both, gcc v11.2.1 and clang
v13.0.1. The problem goes away (i.e. test works fine) if I compile the
code with -O1 instead of -O3, or if I use GCC v8.5 instead. I'll try
to find out more, but as a temporary workaround, we could also switch
to -O1 instead of -O3.

The -O3 is included to force the compiler to vectorise the code -
otherwise you will get the same code as the plain sha512 test. However
is it because gcc v11.2.1 is using even more advanced mvx instructions
or just getting it's code generation wrong?

Do the tests also fail when run natively?

No, it's running fine natively (see my other mail), it must be something in the s390x TCG backend.

It's definitely related to commit 9bca986df88b8ea ... I just tried to switch TCG_TARGET_HAS_bitsel_vec back to 0, and then the test is working fine again...


reply via email to

[Prev in Thread] Current Thread [Next in Thread]