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."
next 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 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.