qemu-devel
[Top][All Lists]
Advanced

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

RE: [PATCH] Hexagon (target/hexagon) Add overrides for cache/sync/barrie


From: Taylor Simpson
Subject: RE: [PATCH] Hexagon (target/hexagon) Add overrides for cache/sync/barrier instructions
Date: Tue, 11 Apr 2023 02:29:28 +0000


> -----Original Message-----
> From: Richard Henderson <richard.henderson@linaro.org>
> Sent: Monday, April 10, 2023 8:30 PM
> To: Taylor Simpson <tsimpson@quicinc.com>; qemu-devel@nongnu.org
> Cc: philmd@linaro.org; ale@rev.ng; anjo@rev.ng; Brian Cain
> <bcain@quicinc.com>; Matheus Bernardino (QUIC)
> <quic_mathbern@quicinc.com>
> Subject: Re: [PATCH] Hexagon (target/hexagon) Add overrides for
> cache/sync/barrier instructions
> 
> On 4/10/23 13:24, Taylor Simpson wrote:
> > Most of these are not modelled in QEMU, so save the overhead of
> > calling a helper.
> >
> > The only exception is dczeroa.  It assigns to hex_dczero_addr, which
> > is handled during packet commit.
> >
> > Signed-off-by: Taylor Simpson<tsimpson@quicinc.com>
> > ---
> >   target/hexagon/gen_tcg.h | 24 ++++++++++++++++++++++++
> >   target/hexagon/macros.h  | 18 ++++--------------
> >   2 files changed, 28 insertions(+), 14 deletions(-)
> 
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
> 
> Something to look at in the future: I believe quite a lot of these variables 
> like
> dczero_addr are not "real" architectural state, in that they do not persist
> beyond the lifetime of the packet.  There are others, e.g. pkt_has_store_s1.

That's correct.

> These variables could be moved to DisasContext and allocated on demand.
> Even recently this was tedious, because of TCG temporary lifetime issues,
> but no longer.

I'll work on this.  The obvious advantage is to allow the TCG optimizer more 
opportunity to fold copies and propagate constants.

Any other advantage?

Thanks,
Taylor


reply via email to

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