qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] amd64 compile


From: J. Mayer
Subject: Re: [Qemu-devel] amd64 compile
Date: Sun, 25 Apr 2004 20:20:48 +0200

On Sun, 2004-04-25 at 18:23, Martin Garton wrote:
> On Sun, 25 Apr 2004, J. Mayer wrote:
> 
> > Your patch is incorrect:
> > - don't remove the -Wall: the warnings you can see are mostly bugs
due
> > to the fact that qemu assumes that unsigned long is 32 bits long.
> 
> Sorry - That was for my testing. I didn't mean to include that in the 
> patch.

Don't have to be sorry, IMHO, all tries can bring good ideas :-)

> I wasn't attempting to fix those warnings/bugs yet.
> 
> Do you think a solution to the problem on hosts where sizeof(void *) 
!=
> sizeof(int) could be best solved by macros such as pointer_to_int()
and
> int_to_pointer() which did whatever is appropriate for that host?
>
> Of course it depends how its being used, I don't know enough about the
> code to tell whether its storing int values in pointers (which would
be 
> fine and could be handled by a macro) or vice versa (which obviously 
> wouldnt)

Fabrice pointed out that it's quite more complicated. This approach
would solve the case where host_ulong is 64 bits and target_ulong is 32
bits. But we still could not be able to emulate a 64 bits machine on a
32 bits host.

> > - to compile qemu usermode emulation, you need to edit the amd64.ld
> > file, which is duplicated. Remove half of the file, and the link
won't
> > fail.

Here's another patch that makes me able to launch PPC programs on my
amd64 and may be able to fix usermode emulation for all 64 bits hosts.
The bug was that the host mmap start address always remained the same
when requested address is NULL,
which makes mmap to be remapped elsewhere, above 4GB, on my machine.

And another patch is there to fix use of debug flags with usermode
emulation.


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

Attachment: mmap.c.diff
Description: Text Data

Attachment: main.c.diff
Description: Text Data


reply via email to

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