From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:42409) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gkCpP-0004NO-Hz for qemu-devel@nongnu.org; Thu, 17 Jan 2019 13:55:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gkCpO-0004n7-H7 for qemu-devel@nongnu.org; Thu, 17 Jan 2019 13:55:47 -0500 Received: from mail-oi1-x243.google.com ([2607:f8b0:4864:20::243]:36226) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gkCpO-0004ma-3L for qemu-devel@nongnu.org; Thu, 17 Jan 2019 13:55:46 -0500 Received: by mail-oi1-x243.google.com with SMTP id x23so7015457oix.3 for ; Thu, 17 Jan 2019 10:55:45 -0800 (PST) MIME-Version: 1.0 References: <20190117132703.17790-1-alex.bennee@linaro.org> <20190117183002.GA21582@flamenco> In-Reply-To: <20190117183002.GA21582@flamenco> From: Peter Maydell Date: Thu, 17 Jan 2019 18:55:33 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PULL 0/7] check-softfloat, fp-bench and clang compile fixes List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Emilio G. Cota" Cc: =?UTF-8?B?QWxleCBCZW5uw6ll?= , QEMU Developers On Thu, 17 Jan 2019 at 18:30, Emilio G. Cota wrote: > > On Thu, Jan 17, 2019 at 17:37:54 +0000, Peter Maydell wrote: > > On Thu, 17 Jan 2019 at 13:27, Alex Benn=C3=A9e = wrote: > > > > > > The following changes since commit 4b9f0b0f7c84eea2dfb0d5be3e0254bc91= 319dbc: > > > > > > Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-requ= est' into staging (2019-01-15 17:24:00 +0000) > > > > > > are available in the Git repository at: > > > > > > https://github.com/stsquad/qemu.git tags/pull-fpu-next-170119-1 > (snip) > > > > FreeBSD, OSX, x86-64 Linux clang builds: > (snip) > > PPC64, AArch64: > (snip) > > NetBSD: > (snip) > > I have added a few commits to fix these -- diff below. > Note that one fix requires a small change in the testfloat > submodule, which I'm pulling here. > > Alex, can you cherry-pick the commits in this branch? > > https://github.com/cota/qemu/tree/bennee-pull > > They should go in before adding fp-test to the automated build, > of course. I left them at the top to make it easier for > you to cherry-pick. > > Also, since this will require a respin, you might want to fix the > "Makfile" typo in patch 7's title. > > > S390X host: > > Looks like a failure running the tests, but no diagnostics about > > what exactly went wrong or clear "test failed" indicator: > > > > cd /home/linux1/qemu/build/all/tests/fp && ./fp-test -s -l 1 > > i32_to_f16 i64_to_f16 i32_to_f32 i64_t > > o_f32 i32_to_f64 i64_to_f64 i32_to_f128 i64_to_f128 > > > int-to-float.out 2> int-to-float.err > > /home/linux1/qemu/tests/Makefile.include:913: recipe for target > > 'check-softfloat-conv' failed > > make: *** [check-softfloat-conv] Error 1 > > What are the contents of "int-to-float.err"? linux1@lxub05:~$ cat qemu/build/all/tests/fp/int-to-float.err >> Testing i32_to_f16, rounding near_even 372 tests total. 372 tests performed. >> Testing i64_to_f16, rounding near_even 756 tests total. 756 tests performed. >> Testing i32_to_f32, rounding near_even 372 tests total. 372 tests performed. >> Testing i64_to_f32, rounding near_even 756 tests total. 756 tests performed. >> Testing i32_to_f64 372 tests total. 372 tests performed. >> Testing i64_to_f64, rounding near_even 756 tests total. 756 tests performed. >> Testing i32_to_f128 372 tests total. 21 tests performed; 20 errors found. > diff --git a/tests/fp/Makefile b/tests/fp/Makefile > index 5019dcdca0..5a35e7c210 100644 > --- a/tests/fp/Makefile > +++ b/tests/fp/Makefile > @@ -65,8 +65,7 @@ QEMU_CFLAGS +=3D $(TF_OPTS) > TF_CFLAGS :=3D > TF_CFLAGS +=3D -Wno-strict-prototypes > TF_CFLAGS +=3D -Wno-unknown-pragmas > -TF_CFLAGS +=3D -Wno-discarded-qualifiers > -TF_CFLAGS +=3D -Wno-maybe-uninitialized > +TF_CFLAGS +=3D -Wno-uninitialized > TF_CFLAGS +=3D -Wno-missing-prototypes > TF_CFLAGS +=3D -Wno-return-type > TF_CFLAGS +=3D -Wno-unused-function configure has logic to check whether it can use particular warning enable/disable flags. Newer gcc (and I hope clang but forget) will happily silently allow -Wno-random-new-thing even if they don't support -Wrandom-new-thing) but I'm not sure our minimum compiler version is yet new enough to be able to rely on that (indeed the warning messages suggest it is not). > diff --git a/tests/fp/berkeley-testfloat-3 b/tests/fp/berkeley-testfloat-= 3 > index ca9fa2ba05..5a59dcec19 160000 > --- a/tests/fp/berkeley-testfloat-3 > +++ b/tests/fp/berkeley-testfloat-3 > @@ -1 +1 @@ > -Subproject commit ca9fa2ba05625ba929958f163b01747e07dd39cc > +Subproject commit 5a59dcec19327396a011a17fd924aed4fec416b3 > diff --git a/tests/fp/fp-test.c b/tests/fp/fp-test.c > index fca576309c..2a35ef601d 100644 > --- a/tests/fp/fp-test.c > +++ b/tests/fp/fp-test.c > @@ -789,7 +789,7 @@ static int set_init_flags(const char *flags) > return 0; > } > > -static uint8_t slow_clear_flags(void) > +static uint_fast8_t slow_clear_flags(void) > { > uint8_t prev =3D slowfloat_exceptionFlags; > > @@ -797,7 +797,7 @@ static uint8_t slow_clear_flags(void) > return prev; > } > > -static uint8_t qemu_clear_flags(void) > +static uint_fast8_t qemu_clear_flags(void) > { > uint8_t prev =3D qemu_flags_to_sf(qsf.float_exception_flags); Why are we using uint_fast8_t here anyway? We switched softfloat to using plain old uint8_t everywhere a while back. thanks -- PMM