qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Compile fixes for newer gcc


From: J. Mayer
Subject: Re: [Qemu-devel] Compile fixes for newer gcc
Date: Tue, 10 May 2005 22:47:23 +0200

On Mon, 2005-05-09 at 02:49 +0100, Paul Brook wrote:
> The attached patch fixes some trivial build problems with newer gcc on amd64.
> It adds FORCE_RET on load ops,


Index: target-ppc/exec.h
===================================================================
RCS file: /cvsroot/qemu/qemu/target-ppc/exec.h,v
retrieving revision 1.10
diff -u -p -r1.10 exec.h
--- target-ppc/exec.h   13 Mar 2005 17:01:22 -0000      1.10
+++ target-ppc/exec.h   9 May 2005 01:33:04 -0000
@@ -33,11 +33,7 @@ register uint32_t T2 asm(AREG3);
 #define FT1 (env->ft1)
 #define FT2 (env->ft2)
 
-#if defined (DEBUG_OP)
-#define RETURN() __asm__ __volatile__("nop");
-#else
-#define RETURN() __asm__ __volatile__("");
-#endif
+#define RETURN() FORCE_RET()

Please don't change this. This is usefull and your so-called "fix" only
makes debug harder.
Same goes for all other patches: use RETURN macro everywhere in PowerPC
emulation code.

>  and introduces helper functions for floating 
> point negation (these require a literal constant load).

/* fneg */
+void do_fneg (void);
 PPC_OP(fneg)
 {
-    FT0 = -FT0;
+    do_fneg();
     RETURN();
 }

Where's the problem ? It compiles and run perfectly on my amd64. Calling
a function for this is a nonsense. Don't apply this.
What could (should !) be done here instead is to use:
FT0 = float64_chs(FT0);
I will do an update to use softfloat functions everywhere in PowerPC
emulation one of those days...

-- 
J. Mayer <address@hidden>
Never organized





reply via email to

[Prev in Thread] Current Thread [Next in Thread]