Hi,

On Fri, 18 Jan 2008, Johannes Schindelin wrote:

> On Thu, 17 Jan 2008, consul wrote:
> 
> > It broke mingw build with gcc-3.4.2
> 
> Now that's funny, since the last incarnation Alexander should have 
> _exactly_ the same code as before for gcc < 4.  Are you sure that you do 
> not have applied the patch that exchanges at least one "#ifdef 
> HOST_I386" for "#ifdef GCC_BREAKS_T_REGISTER"?

Okay, I see it, too.  Seems this is the culprit:

-- snip --
diff --git a/softmmu_header.h b/softmmu_header.h
index 80eefa8..7e4bc03 100644
--- a/softmmu_header.h
+++ b/softmmu_header.h
@@ -209,7 +215,11 @@ static inline void glue(glue(st, SUFFIX), 
MEMSUFFIX)(target_ulong ptr, RES_TYPE
                   : "r" (ptr),
 /* NOTE: 'q' would be needed as constraint, but we could not use it
    with T1 ! */
+#if DATA_SIZE == 1 || DATA_SIZE == 2
+                  "q" (v),
+#else
                   "r" (v),
+#endif
                   "i" ((CPU_TLB_SIZE - 1) << CPU_TLB_ENTRY_BITS),
                   "i" (TARGET_PAGE_BITS - CPU_TLB_ENTRY_BITS),
                   "i" (TARGET_PAGE_MASK | (DATA_SIZE - 1)),
-- snap --

Michael, Alexander, what is this hunk supposed to do?

Ciao,
Dscho



Reply via email to