From: Aurelien Jarno <aurelien@aurel32.net>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Pranith Kumar <bobby.prani@gmail.com>,
"open list:All patches CC here" <qemu-devel@nongnu.org>,
Paolo Bonzini <pbonzini@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 2/5] softfloat: Fix warn about implicit conversion from int to int8_t
Date: Wed, 10 Aug 2016 14:27:10 +0200 [thread overview]
Message-ID: <20160810122710.GA11998@aurel32.net> (raw)
In-Reply-To: <CAFEAcA9Oi+frx3SNmt3+iNRhJv4cuGG7c23LXYNJqL0ixGkPUg@mail.gmail.com>
On 2016-08-09 22:12, Peter Maydell wrote:
> On 9 August 2016 at 20:16, Aurelien Jarno <aurelien@aurel32.net> wrote:
> > On 2016-08-09 15:02, Pranith Kumar wrote:
> >> Change the flag type to 'int' to fix the implicit conversion error.
> >>
> >> Suggested-by: Peter Maydell <peter.maydell@linaro.org>
> >> Signed-off-by: Pranith Kumar <bobby.prani@gmail.com>
> >> ---
> >> fpu/softfloat-specialize.h | 2 +-
> >> include/fpu/softfloat.h | 4 ++--
> >> 2 files changed, 3 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/fpu/softfloat-specialize.h b/fpu/softfloat-specialize.h
> >> index 43d0890..46b4091 100644
> >> --- a/fpu/softfloat-specialize.h
> >> +++ b/fpu/softfloat-specialize.h
> >> @@ -197,7 +197,7 @@ float128 float128_default_nan(float_status *status)
> >> | should be simply `float_exception_flags |= flags;'.
> >> *----------------------------------------------------------------------------*/
> >>
> >> -void float_raise(int8_t flags, float_status *status)
> >> +void float_raise(int flags, float_status *status)
> >> {
> >> status->float_exception_flags |= flags;
> >> }
> >> diff --git a/include/fpu/softfloat.h b/include/fpu/softfloat.h
> >> index 0e57ee5..416cf7a 100644
> >> --- a/include/fpu/softfloat.h
> >> +++ b/include/fpu/softfloat.h
> >> @@ -196,9 +196,9 @@ enum {
> >> };
> >>
> >> typedef struct float_status {
> >> + int float_exception_flags;
> >> signed char float_detect_tininess;
> >> signed char float_rounding_mode;
> >> - signed char float_exception_flags;
> >> signed char floatx80_rounding_precision;
> >> /* should denormalised results go to zero and set the inexact flag? */
> >> flag flush_to_zero;
> >
> > This changes the size of the structure, and thus of the CPU*State
> > structures. I don't think it's something we want to do, especially given
> > we currently only use 7 flags, so 7 bits and that fits in a char.
>
> It does, but only by four bytes, which I didn't think was that
> big a deal. If we want to keep it to one byte then I think
Indeed it's not a lot, but if we do that with everything that goes into
the CPU*state structures, it has a significant impact.
> making it a uint8_t is probably better than leaving it as
> signed char, given we're definitely not treating it as a
> signed value.
I agree the signed char type is very strange here, it is probably there
for historical reasons. I guess using a uint8_t would indeed be the
correct short term fix.
The long term fix is probably to change this whole structure as a
bitfield of unsigned int, like we already do in the tcg code.
Aurelien
--
Aurelien Jarno GPG: 4096R/1DDD8C9B
aurelien@aurel32.net http://www.aurel32.net
next prev parent reply other threads:[~2016-08-10 12:27 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-09 19:02 [Qemu-devel] [PATCH 1/5] atomic: strip "const" from variables declared with typeof Pranith Kumar
2016-08-09 19:02 ` [Qemu-devel] [PATCH 2/5] softfloat: Fix warn about implicit conversion from int to int8_t Pranith Kumar
2016-08-09 19:16 ` Aurelien Jarno
2016-08-09 21:12 ` Peter Maydell
2016-08-10 12:27 ` Aurelien Jarno [this message]
2016-08-10 10:32 ` Richard Henderson
2016-08-10 10:37 ` Peter Maydell
2016-08-10 12:12 ` Paolo Bonzini
2016-08-09 19:02 ` [Qemu-devel] [PATCH 3/5] Disable warn about left shifts of negative values Pranith Kumar
2016-08-09 19:02 ` [Qemu-devel] [PATCH 4/5] clang: Fix warning reg. expansion to 'defined' Pranith Kumar
2016-08-09 19:02 ` [Qemu-arm] [PATCH 5/5] target-arm: Fix warn about implicit conversion Pranith Kumar
2016-08-09 19:02 ` [Qemu-devel] " Pranith Kumar
2016-08-11 10:50 ` [Qemu-arm] " Peter Maydell
2016-08-11 10:50 ` [Qemu-devel] " Peter Maydell
2016-08-12 12:20 ` Peter Maydell
2016-08-12 12:20 ` Peter Maydell
2016-08-09 20:14 ` [Qemu-devel] [PATCH 1/5] atomic: strip "const" from variables declared with typeof Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160810122710.GA11998@aurel32.net \
--to=aurelien@aurel32.net \
--cc=bobby.prani@gmail.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.