qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] QEMU TCG code does not build with OpenBSD PowerPC


From: malc
Subject: Re: [Qemu-devel] QEMU TCG code does not build with OpenBSD PowerPC
Date: Sun, 10 May 2009 22:41:13 +0400 (MSD)

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.
 
> 
> --- 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:address@hidden




reply via email to

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