From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1M3Kes-0000uM-Vc for qemu-devel@nongnu.org; Sun, 10 May 2009 21:50:23 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1M3Keo-0000ra-Bw for qemu-devel@nongnu.org; Sun, 10 May 2009 21:50:22 -0400 Received: from [199.232.76.173] (port=52611 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1M3Ken-0000rR-U7 for qemu-devel@nongnu.org; Sun, 10 May 2009 21:50:17 -0400 Received: from bsdimp.com ([199.45.160.85]:59328 helo=harmony.bsdimp.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1M3Ken-0006nN-7F for qemu-devel@nongnu.org; Sun, 10 May 2009 21:50:17 -0400 Date: Sun, 10 May 2009 19:46:23 -0600 (MDT) Message-Id: <20090510.194623.1716879079.imp@bsdimp.com> Subject: Re: [Qemu-devel] QEMU TCG code does not build with OpenBSD PowerPC From: "M. Warner Losh" In-Reply-To: References: <20090510021217.GA26523@booyah.home.comstyle.com> Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: av1474@comtv.ru Cc: qemu-devel@nongnu.org, brad@comstyle.com In message: malc writes: : On Sat, 9 May 2009, Brad wrote: : : > On Sat, Apr 11, 2009 at 10:58:06AM +0400, malc wrote: : > > On Fri, 10 Apr 2009, Brad wrote: : > > : > > > Trying to build on an OpenBSD PowerPC machine dies pretty quickly : > > > in the TCG PowerPC code.. : > > > : > > > CC i386-softmmu/exec.o : > > > In file included from /usr/obj/ports/qemu-0.10.2/qemu-0.10.2/tcg/tcg.h:24, : > > > from /usr/obj/ports/qemu-0.10.2/qemu-0.10.2/exec.c:39: : > > > /usr/obj/ports/qemu-0.10.2/qemu-0.10.2/tcg/ppc/tcg-target.h:76:2: #error : > > > Unsupported system : > > > gmake[1]: *** [exec.o] Error 1 : > > > : > > > Any help with this? : > > : > > You need to know which ABI OpenBSD/PPC uses. A shot in the dark would be : > > to try something like: : > : > After speaking to the PowerPC maintainer to double check, we're : > using the standard SVR4 ABI so this should be good.. : > : > Also as far as I know this should also apply to FreeBSD and NetBSD : > when running on PowerPC, but I'll leave it at this for now. : : Good. I'm pretty sure that FreeBSD uses the SysV ABI, and not the newer EABI. I thought Linux was using the latter... Warner : > --- tcg/ppc/tcg-target.c.orig Fri May 8 02:39:52 2009 : > +++ tcg/ppc/tcg-target.c Fri May 8 02:41:24 2009 : > @@ -109,7 +109,7 @@ static const int tcg_target_reg_alloc_order[] = { : > TCG_REG_R11, : > #endif : > TCG_REG_R12, : > -#ifndef __linux__ : > +#if !defined(__linux__) && !defined(__OpenBSD__) : > TCG_REG_R13, : > #endif : > TCG_REG_R0, : > @@ -1535,7 +1535,7 @@ void tcg_target_init(TCGContext *s) : > #ifndef __APPLE__ : > tcg_regset_set_reg(s->reserved_regs, TCG_REG_R2); : > #endif : > -#ifdef __linux__ : > +#if defined(__linux__) || defined(__OpenBSD__) : > tcg_regset_set_reg(s->reserved_regs, TCG_REG_R13); : > #endif : > : > --- tcg/ppc/tcg-target.h.orig Mon Apr 6 22:04:47 2009 : > +++ tcg/ppc/tcg-target.h Sun Apr 26 20:15:41 2009 : > @@ -69,7 +69,7 @@ enum { : > #define TCG_TARGET_CALL_STACK_OFFSET 24 : > #elif defined _AIX : > #define TCG_TARGET_CALL_STACK_OFFSET 52 : > -#elif defined __linux__ : > +#elif defined __linux__ || defined __OpenBSD__ : > #define TCG_TARGET_CALL_ALIGN_ARGS 1 : > #define TCG_TARGET_CALL_STACK_OFFSET 8 : > #else : : You tested this and it works? : : -- : mailto:av1474@comtv.ru : : :