* [Qemu-devel] [PATCH 01/14] arm host: Fix compiler warning
@ 2010-01-20 18:43 Stefan Weil
2010-01-20 22:11 ` [Qemu-devel] " Stefan Weil
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Stefan Weil @ 2010-01-20 18:43 UTC (permalink / raw)
To: QEMU Developers
Compilation for arm (native or cross) results in this
warning:
fpu/softfloat-native.c: In function ‘float64_round_to_int’:
fpu/softfloat-native.c:387: error: control reaches end of non-void function
float64_round_to_int uses special assembler code for arm
and has no explicit return value.
As there is no obvious reason why arm should need special
code, all fpu related conditionals were removed.
The remaining code is standard (C99) and compiles for arm,
too.
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
---
fpu/softfloat-native.c | 20 --------------------
fpu/softfloat-native.h | 7 -------
2 files changed, 0 insertions(+), 27 deletions(-)
diff --git a/fpu/softfloat-native.c b/fpu/softfloat-native.c
index 8d64f4e..049c830 100644
--- a/fpu/softfloat-native.c
+++ b/fpu/softfloat-native.c
@@ -12,8 +12,6 @@ void set_float_rounding_mode(int val STATUS_PARAM)
#if (defined(CONFIG_BSD) && !defined(__APPLE__) && !defined(__GLIBC__)) || \
(defined(CONFIG_SOLARIS) && CONFIG_SOLARIS_VERSION < 10)
fpsetround(val);
-#elif defined(__arm__)
- /* nothing to do */
#else
fesetround(val);
#endif
@@ -365,25 +363,7 @@ float64 float64_trunc_to_int( float64 a STATUS_PARAM )
float64 float64_round_to_int( float64 a STATUS_PARAM )
{
-#if defined(__arm__)
- switch(STATUS(float_rounding_mode)) {
- default:
- case float_round_nearest_even:
- asm("rndd %0, %1" : "=f" (a) : "f"(a));
- break;
- case float_round_down:
- asm("rnddm %0, %1" : "=f" (a) : "f"(a));
- break;
- case float_round_up:
- asm("rnddp %0, %1" : "=f" (a) : "f"(a));
- break;
- case float_round_to_zero:
- asm("rnddz %0, %1" : "=f" (a) : "f"(a));
- break;
- }
-#else
return rint(a);
-#endif
}
float64 float64_rem( float64 a, float64 b STATUS_PARAM)
diff --git a/fpu/softfloat-native.h b/fpu/softfloat-native.h
index fe737b3..6da0bcb 100644
--- a/fpu/softfloat-native.h
+++ b/fpu/softfloat-native.h
@@ -126,13 +126,6 @@ enum {
float_round_up = FP_RP,
float_round_to_zero = FP_RZ
};
-#elif defined(__arm__)
-enum {
- float_round_nearest_even = 0,
- float_round_down = 1,
- float_round_up = 2,
- float_round_to_zero = 3
-};
#else
enum {
float_round_nearest_even = FE_TONEAREST,
--
1.6.5
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Qemu-devel] Re: [PATCH 01/14] arm host: Fix compiler warning
2010-01-20 18:43 [Qemu-devel] [PATCH 01/14] arm host: Fix compiler warning Stefan Weil
@ 2010-01-20 22:11 ` Stefan Weil
2010-01-22 11:57 ` [Qemu-devel] " Laurent Desnogues
2010-02-06 22:18 ` Aurelien Jarno
2 siblings, 0 replies; 4+ messages in thread
From: Stefan Weil @ 2010-01-20 22:11 UTC (permalink / raw)
To: QEMU Developers
Stefan Weil schrieb:
> Compilation for arm (native or cross) results in this
> warning:
>
> fpu/softfloat-native.c: In function ‘float64_round_to_int’:
> fpu/softfloat-native.c:387: error: control reaches end of non-void function
>
> float64_round_to_int uses special assembler code for arm
> and has no explicit return value.
>
> As there is no obvious reason why arm should need special
> code, all fpu related conditionals were removed.
> The remaining code is standard (C99) and compiles for arm,
> too.
>
> Signed-off-by: Stefan Weil <weil@mail.berlios.de>
> ---
> fpu/softfloat-native.c | 20 --------------------
> fpu/softfloat-native.h | 7 -------
> 2 files changed, 0 insertions(+), 27 deletions(-)
>
The "subject" line was wrong: the patch is complete
and can be applied as it is.
I'm sorry if I created confusion.
Stefan Weil
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH 01/14] arm host: Fix compiler warning
2010-01-20 18:43 [Qemu-devel] [PATCH 01/14] arm host: Fix compiler warning Stefan Weil
2010-01-20 22:11 ` [Qemu-devel] " Stefan Weil
@ 2010-01-22 11:57 ` Laurent Desnogues
2010-02-06 22:18 ` Aurelien Jarno
2 siblings, 0 replies; 4+ messages in thread
From: Laurent Desnogues @ 2010-01-22 11:57 UTC (permalink / raw)
To: Stefan Weil; +Cc: QEMU Developers
On Wed, Jan 20, 2010 at 6:43 PM, Stefan Weil <weil@mail.berlios.de> wrote:
> Compilation for arm (native or cross) results in this
> warning:
>
> fpu/softfloat-native.c: In function ‘float64_round_to_int’:
> fpu/softfloat-native.c:387: error: control reaches end of non-void function
>
> float64_round_to_int uses special assembler code for arm
> and has no explicit return value.
>
> As there is no obvious reason why arm should need special
> code, all fpu related conditionals were removed.
> The remaining code is standard (C99) and compiles for arm,
> too.
>
> Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Acked-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Laurent
> ---
> fpu/softfloat-native.c | 20 --------------------
> fpu/softfloat-native.h | 7 -------
> 2 files changed, 0 insertions(+), 27 deletions(-)
>
> diff --git a/fpu/softfloat-native.c b/fpu/softfloat-native.c
> index 8d64f4e..049c830 100644
> --- a/fpu/softfloat-native.c
> +++ b/fpu/softfloat-native.c
> @@ -12,8 +12,6 @@ void set_float_rounding_mode(int val STATUS_PARAM)
> #if (defined(CONFIG_BSD) && !defined(__APPLE__) && !defined(__GLIBC__)) || \
> (defined(CONFIG_SOLARIS) && CONFIG_SOLARIS_VERSION < 10)
> fpsetround(val);
> -#elif defined(__arm__)
> - /* nothing to do */
> #else
> fesetround(val);
> #endif
> @@ -365,25 +363,7 @@ float64 float64_trunc_to_int( float64 a STATUS_PARAM )
>
> float64 float64_round_to_int( float64 a STATUS_PARAM )
> {
> -#if defined(__arm__)
> - switch(STATUS(float_rounding_mode)) {
> - default:
> - case float_round_nearest_even:
> - asm("rndd %0, %1" : "=f" (a) : "f"(a));
> - break;
> - case float_round_down:
> - asm("rnddm %0, %1" : "=f" (a) : "f"(a));
> - break;
> - case float_round_up:
> - asm("rnddp %0, %1" : "=f" (a) : "f"(a));
> - break;
> - case float_round_to_zero:
> - asm("rnddz %0, %1" : "=f" (a) : "f"(a));
> - break;
> - }
> -#else
> return rint(a);
> -#endif
> }
>
> float64 float64_rem( float64 a, float64 b STATUS_PARAM)
> diff --git a/fpu/softfloat-native.h b/fpu/softfloat-native.h
> index fe737b3..6da0bcb 100644
> --- a/fpu/softfloat-native.h
> +++ b/fpu/softfloat-native.h
> @@ -126,13 +126,6 @@ enum {
> float_round_up = FP_RP,
> float_round_to_zero = FP_RZ
> };
> -#elif defined(__arm__)
> -enum {
> - float_round_nearest_even = 0,
> - float_round_down = 1,
> - float_round_up = 2,
> - float_round_to_zero = 3
> -};
> #else
> enum {
> float_round_nearest_even = FE_TONEAREST,
> --
> 1.6.5
>
>
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH 01/14] arm host: Fix compiler warning
2010-01-20 18:43 [Qemu-devel] [PATCH 01/14] arm host: Fix compiler warning Stefan Weil
2010-01-20 22:11 ` [Qemu-devel] " Stefan Weil
2010-01-22 11:57 ` [Qemu-devel] " Laurent Desnogues
@ 2010-02-06 22:18 ` Aurelien Jarno
2 siblings, 0 replies; 4+ messages in thread
From: Aurelien Jarno @ 2010-02-06 22:18 UTC (permalink / raw)
To: Stefan Weil; +Cc: QEMU Developers
On Wed, Jan 20, 2010 at 07:43:25PM +0100, Stefan Weil wrote:
> Compilation for arm (native or cross) results in this
> warning:
>
> fpu/softfloat-native.c: In function ‘float64_round_to_int’:
> fpu/softfloat-native.c:387: error: control reaches end of non-void function
>
> float64_round_to_int uses special assembler code for arm
> and has no explicit return value.
>
> As there is no obvious reason why arm should need special
> code, all fpu related conditionals were removed.
> The remaining code is standard (C99) and compiles for arm,
> too.
The reason for this special code is that ARM old ABI does not have the
FE_* constants defined. Only EABI is supported since the switch to TCG,
so this is not a problem removing that code.
Patch applied.
--
Aurelien Jarno GPG: 1024D/F1BCDB73
aurelien@aurel32.net http://www.aurel32.net
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-02-06 22:18 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-20 18:43 [Qemu-devel] [PATCH 01/14] arm host: Fix compiler warning Stefan Weil
2010-01-20 22:11 ` [Qemu-devel] " Stefan Weil
2010-01-22 11:57 ` [Qemu-devel] " Laurent Desnogues
2010-02-06 22:18 ` Aurelien Jarno
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).