qemu-ppc
[Top][All Lists]
Advanced

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

Re: [RFC PATCH 08/11] target/ppc: wrapped some TCG only logic with ifdef


From: David Gibson
Subject: Re: [RFC PATCH 08/11] target/ppc: wrapped some TCG only logic with ifdefs
Date: Mon, 17 May 2021 14:00:38 +1000

On Fri, May 14, 2021 at 09:44:36AM -0500, Richard Henderson wrote:
> On 5/14/21 8:29 AM, Bruno Piazera Larsen wrote:
> > 
> > On 12/05/2021 15:57, Bruno Piazera Larsen wrote:
> > > On 12/05/2021 15:33, Richard Henderson wrote:
> > > > On 5/12/21 9:08 AM, Bruno Larsen (billionai) wrote:
> > > > > diff --git a/include/exec/helper-proto.h b/include/exec/helper-proto.h
> > > > > index ba100793a7..ce287222ee 100644
> > > > > --- a/include/exec/helper-proto.h
> > > > > +++ b/include/exec/helper-proto.h
> > > > > @@ -38,7 +38,9 @@ dh_ctype(ret) HELPER(name) (dh_ctype(t1),
> > > > > dh_ctype(t2), dh_ctype(t3), \
> > > > >   #define IN_HELPER_PROTO
> > > > >     #include "helper.h"
> > > > > +#ifdef CONFIG_TCG
> > > > >   #include "trace/generated-helpers.h"
> > > > > +#endif
> > > > >   #include "accel/tcg/tcg-runtime.h"
> > > > >   #include "accel/tcg/plugin-helpers.h"
> > > > 
> > > > Um.. this file is exclusively TCG already.
> > > > Are you missing some use of helper_foo()?
> > > A lot of files that we are compiling (mainly mmu-*, excp_helper and
> > > gdbstub IIRC). We could comb through all of them and remove all
> > > declarations of helpers and wrap the inclusion of helper-proto
> > > itself in ifdefs, but it felt unnecessarily long. If it is
> > > preferable, we can do it.
> > > 
> > So, I just looked and we'd need to change excp_helper.c and
> > mmu-hash64.c, encasing 14 and 8 helper_foo() declarations. Is it better
> > to work on those 2 files, or to change helper-proto?
> 
> Let's work on excp_helper.c and mmu-hash64.c.
> 
> For excp_helper.c, ideally everything in there would be tcg related.  Either
> explicitly as helper_foo() or by being one of the TCGCPUOps functions like
> ppc_cpu_exec_interrupt.
> 
> For mmu-hash64.c... I guess the easiest thing in the short term is to put
> big ifdefs around helper_slbi{a,e,eg}.  Or they could be moved to
> mmu_helper.c, with slb_lookup declared in mmu-hash64.h.

I think the ifdefs are the lesser evil here.  I created mmu-hash64.*
because I think dividing things by MMU family is much more useful than
dividing by how it fits into the TCG/SOFTMMU model which how things
kind of were done historically (and still are for the many MMU familes
I've never had time or knowledge to rework).

-- 
David Gibson                    | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
                                | _way_ _around_!
http://www.ozlabs.org/~dgibson

Attachment: signature.asc
Description: PGP signature


reply via email to

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