[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] compiling on PPC does work
From: |
C.W. Betts |
Subject: |
Re: [Qemu-devel] compiling on PPC does work |
Date: |
Mon, 26 May 2008 13:17:56 -0600 |
On May 26, 2008, at 11:37 AM, malc wrote:
On Sun, 25 May 2008, C.W. Betts wrote:
Due to the fact that there is now a PowerPC tcg host, I tried to
make the i386 and sparc guests. I am building it on an Intel Mac,
but I doubt that's the problem (although it took me awhile to
figure out how to make PPC apps on i386 comps without using a --
build configure argument). However, I got the following error when
trying to compile the apic.c file on i386:
Few notes:
a. Some new optimizations commited shortly before/after ppc tcg
uncovered
a bug. The bug was fixed but the patch is not yet been commited
to SVN.
Other than running the application under Rosetta, I have no way of
checking to see if it works.
b. MacOS X is not supported.
(I think it has a slightly different ABI plus changes to dyngen and
elsewhere are needed to work with Mach O relocations. The latter
is essential for working with those targets that still use dyngen)
I'm using targets that don't use dyngen. Dyngen does compile for PPC
OS X (not i386, but I don't care)
gcc -I. -I.. -I/Users/username/makestuff/qemu-svn/target-i386 -I/
Users/username/makestuff/qemu-svn -MMD -MP -DNEED_CPU_H -
D__powerpc__ -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -
D_LARGEFILE_SOURCE -I/Users/username/makestuff/qemu-svn/tcg -I/
Users/username/makestuff/qemu-svn/tcg/ppc -I/Users/username/
makestuff/qemu-svn/fpu -DHAS_AUDIO -DHAS_AUDIO_CHOICE -I/Users/
username/makestuff/qemu-svn/slirp -Wall -O2 -g -fno-strict-aliasing
-mdynamic-no-pic -m32 -arch ppc -c -o apic.o /Users/username/
makestuff/qemu-svn/hw/apic.c
/var/folders/zN/zNzLfd+VH20MiY73gvxNNk+++TI/-Tmp-//cc4FQRDT.s:
151:Invalid mnemonic 'bsr'
/var/folders/zN/zNzLfd+VH20MiY73gvxNNk+++TI/-Tmp-//cc4FQRDT.s:
1458:Invalid mnemonic 'bsf'
make[1]: *** [apic.o] Error 1
make: *** [subdir-i386-softmmu] Error 2
Excerpt from apic.c
#if defined(HOST_I386)
__asm__ __volatile__ ("bsr %1, %0\n" : "+r" (ret) : "rm" (value));
return ret;
#else
Apparently HOST_I386 is defined somewhere hence this optimization.
Found out what was the problem. HOST_I386 was defined in config-
host.h. After changing it to HOST_PPC, everything built fine
The sparc platform compiled and linked without a problem, as well
as the rest of the files.
--
mailto:address@hidden