qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Andreas Schwab <schwab@suse.de>
To: qemu-devel@nongnu.org
Subject: [Qemu-devel] [PATCH] Fix char signedness
Date: Fri, 27 Oct 2006 19:07:05 +0200	[thread overview]
Message-ID: <jeejstd6x2.fsf@sykes.suse.de> (raw)

If you want to put a negative number in a char you must use a signed char.

Andreas.

Index: fpu/softfloat-native.c
===================================================================
RCS file: /sources/qemu/qemu/fpu/softfloat-native.c,v
retrieving revision 1.5
diff -u -a -p -r1.5 softfloat-native.c
--- fpu/softfloat-native.c	22 Oct 2006 00:18:54 -0000	1.5
+++ fpu/softfloat-native.c	27 Oct 2006 17:00:21 -0000
@@ -149,7 +149,7 @@ float32 float32_sqrt( float32 a STATUS_P
 {
     return sqrtf(a);
 }
-char float32_compare( float32 a, float32 b STATUS_PARAM )
+signed char float32_compare( float32 a, float32 b STATUS_PARAM )
 {
     if (a < b) {
         return -1;
@@ -161,7 +161,7 @@ char float32_compare( float32 a, float32
         return 2;
     }
 }
-char float32_compare_quiet( float32 a, float32 b STATUS_PARAM )
+signed char float32_compare_quiet( float32 a, float32 b STATUS_PARAM )
 {
     if (isless(a, b)) {
         return -1;
@@ -258,7 +258,7 @@ float64 float64_sqrt( float64 a STATUS_P
 {
     return sqrt(a);
 }
-char float64_compare( float64 a, float64 b STATUS_PARAM )
+signed char float64_compare( float64 a, float64 b STATUS_PARAM )
 {
     if (a < b) {
         return -1;
@@ -270,7 +270,7 @@ char float64_compare( float64 a, float64
         return 2;
     }
 }
-char float64_compare_quiet( float64 a, float64 b STATUS_PARAM )
+signed char float64_compare_quiet( float64 a, float64 b STATUS_PARAM )
 {
     if (isless(a, b)) {
         return -1;
@@ -350,7 +350,7 @@ floatx80 floatx80_sqrt( floatx80 a STATU
 {
     return sqrtl(a);
 }
-char floatx80_compare( floatx80 a, floatx80 b STATUS_PARAM )
+signed char floatx80_compare( floatx80 a, floatx80 b STATUS_PARAM )
 {
     if (a < b) {
         return -1;
@@ -362,7 +362,7 @@ char floatx80_compare( floatx80 a, float
         return 2;
     }
 }
-char floatx80_compare_quiet( floatx80 a, floatx80 b STATUS_PARAM )
+signed char floatx80_compare_quiet( floatx80 a, floatx80 b STATUS_PARAM )
 {
     if (isless(a, b)) {
         return -1;
Index: fpu/softfloat-native.h
===================================================================
RCS file: /sources/qemu/qemu/fpu/softfloat-native.h,v
retrieving revision 1.7
diff -u -a -p -r1.7 softfloat-native.h
--- fpu/softfloat-native.h	22 Oct 2006 00:18:54 -0000	1.7
+++ fpu/softfloat-native.h	27 Oct 2006 17:00:21 -0000
@@ -181,8 +181,8 @@ INLINE char float32_unordered( float32 a
     return isunordered(a, b);
 
 }
-char float32_compare( float32, float32 STATUS_PARAM );
-char float32_compare_quiet( float32, float32 STATUS_PARAM );
+signed char float32_compare( float32, float32 STATUS_PARAM );
+signed char float32_compare_quiet( float32, float32 STATUS_PARAM );
 char float32_is_signaling_nan( float32 );
 
 INLINE float32 float32_abs(float32 a)
@@ -263,8 +263,8 @@ INLINE char float64_unordered( float64 a
     return isunordered(a, b);
 
 }
-char float64_compare( float64, float64 STATUS_PARAM );
-char float64_compare_quiet( float64, float64 STATUS_PARAM );
+signed char float64_compare( float64, float64 STATUS_PARAM );
+signed char float64_compare_quiet( float64, float64 STATUS_PARAM );
 char float64_is_signaling_nan( float64 );
 flag float64_is_nan( float64 );
 
@@ -345,8 +345,8 @@ INLINE char floatx80_unordered( floatx80
     return isunordered(a, b);
 
 }
-char floatx80_compare( floatx80, floatx80 STATUS_PARAM );
-char floatx80_compare_quiet( floatx80, floatx80 STATUS_PARAM );
+signed char floatx80_compare( floatx80, floatx80 STATUS_PARAM );
+signed char floatx80_compare_quiet( floatx80, floatx80 STATUS_PARAM );
 char floatx80_is_signaling_nan( floatx80 );
 
 INLINE floatx80 floatx80_abs(floatx80 a)
Index: fpu/softfloat.c
===================================================================
RCS file: /sources/qemu/qemu/fpu/softfloat.c,v
retrieving revision 1.3
diff -u -a -p -r1.3 softfloat.c
--- fpu/softfloat.c	22 Oct 2006 00:18:54 -0000	1.3
+++ fpu/softfloat.c	27 Oct 2006 17:00:21 -0000
@@ -5283,7 +5283,7 @@ unsigned int float64_to_uint32_round_to_
 }
 
 #define COMPARE(s, nan_exp)                                                  \
-INLINE char float ## s ## _compare_internal( float ## s a, float ## s b,     \
+INLINE signed char float ## s ## _compare_internal( float ## s a, float ## s b,     \
                                       int is_quiet STATUS_PARAM )            \
 {                                                                            \
     flag aSign, bSign;                                                       \
@@ -5317,12 +5317,12 @@ INLINE char float ## s ## _compare_inter
     }                                                                        \
 }                                                                            \
                                                                              \
-char float ## s ## _compare( float ## s a, float ## s b STATUS_PARAM )       \
+signed char float ## s ## _compare( float ## s a, float ## s b STATUS_PARAM )       \
 {                                                                            \
     return float ## s ## _compare_internal(a, b, 0 STATUS_VAR);              \
 }                                                                            \
                                                                              \
-char float ## s ## _compare_quiet( float ## s a, float ## s b STATUS_PARAM ) \
+signed char float ## s ## _compare_quiet( float ## s a, float ## s b STATUS_PARAM ) \
 {                                                                            \
     return float ## s ## _compare_internal(a, b, 1 STATUS_VAR);              \
 }
Index: fpu/softfloat.h
===================================================================
RCS file: /sources/qemu/qemu/fpu/softfloat.h,v
retrieving revision 1.4
diff -u -a -p -r1.4 softfloat.h
--- fpu/softfloat.h	22 Oct 2006 00:18:54 -0000	1.4
+++ fpu/softfloat.h	27 Oct 2006 17:00:21 -0000
@@ -234,8 +234,8 @@ char float32_lt( float32, float32 STATUS
 char float32_eq_signaling( float32, float32 STATUS_PARAM );
 char float32_le_quiet( float32, float32 STATUS_PARAM );
 char float32_lt_quiet( float32, float32 STATUS_PARAM );
-char float32_compare( float32, float32 STATUS_PARAM );
-char float32_compare_quiet( float32, float32 STATUS_PARAM );
+signed char float32_compare( float32, float32 STATUS_PARAM );
+signed char float32_compare_quiet( float32, float32 STATUS_PARAM );
 char float32_is_signaling_nan( float32 );
 flag float64_is_nan( float64 a );
 
@@ -283,8 +283,8 @@ char float64_lt( float64, float64 STATUS
 char float64_eq_signaling( float64, float64 STATUS_PARAM );
 char float64_le_quiet( float64, float64 STATUS_PARAM );
 char float64_lt_quiet( float64, float64 STATUS_PARAM );
-char float64_compare( float64, float64 STATUS_PARAM );
-char float64_compare_quiet( float64, float64 STATUS_PARAM );
+signed char float64_compare( float64, float64 STATUS_PARAM );
+signed char float64_compare_quiet( float64, float64 STATUS_PARAM );
 char float64_is_signaling_nan( float64 );
 
 INLINE float64 float64_abs(float64 a)

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

             reply	other threads:[~2006-10-27 17:07 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-27 17:07 Andreas Schwab [this message]
2006-10-27 17:40 ` [Qemu-devel] [PATCH] Fix char signedness Johannes Schindelin
2006-10-27 17:54   ` andrzej zaborowski
2006-10-27 17:58   ` Andreas Schwab
2006-10-27 18:23     ` M. Warner Losh
2006-10-28 10:46       ` Martin Guy
2006-10-28 19:04         ` Rob Landley
2006-10-27 22:57     ` Johannes Schindelin
2006-10-27 23:09       ` Paul Brook
2006-10-28 18:58         ` Rob Landley
2006-10-27 23:12       ` Thiemo Seufer
2006-10-27 23:17       ` M. Warner Losh
2006-10-28 10:14       ` Laurent Desnogues

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=jeejstd6x2.fsf@sykes.suse.de \
    --to=schwab@suse.de \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).