[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC v2 31/38] target/xtensa: fetch code with translato
From: |
Max Filippov |
Subject: |
Re: [Qemu-devel] [RFC v2 31/38] target/xtensa: fetch code with translator_ld |
Date: |
Sun, 3 Mar 2019 18:36:42 -0800 |
On Mon, Feb 25, 2019 at 6:55 AM Alex Bennée <address@hidden> wrote:
> Emilio G. Cota <address@hidden> writes:
> > Signed-off-by: Emilio G. Cota <address@hidden>
> > ---
> > target/xtensa/translate.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/target/xtensa/translate.c b/target/xtensa/translate.c
> > index 46e1338448..c140742562 100644
> > --- a/target/xtensa/translate.c
> > +++ b/target/xtensa/translate.c
> > @@ -882,7 +882,7 @@ static inline unsigned xtensa_op0_insn_len(DisasContext
> > *dc, uint8_t op0)
> > static void disas_xtensa_insn(CPUXtensaState *env, DisasContext *dc)
> > {
> > xtensa_isa isa = dc->config->isa;
> > - unsigned char b[MAX_INSN_LENGTH] = {cpu_ldub_code(env, dc->pc)};
> > + unsigned char b[MAX_INSN_LENGTH] = {translator_ldub(env, dc->pc)};
> > unsigned len = xtensa_op0_insn_len(dc, b[0]);
> > xtensa_format fmt;
> > int slot, slots;
> > @@ -914,7 +914,7 @@ static void disas_xtensa_insn(CPUXtensaState *env,
> > DisasContext *dc)
> > dc->pc);
> > }
> > for (i = 1; i < len; ++i) {
> > - b[i] = cpu_ldub_code(env, dc->pc + i);
> > + b[i] = translator_ldub(env, dc->pc + i);
> > }
> > xtensa_insnbuf_from_chars(isa, dc->insnbuf, b, len);
> > fmt = xtensa_format_decode(isa, dc->insnbuf);
>
> There is also:
>
> static inline unsigned xtensa_insn_len(CPUXtensaState *env, DisasContext
> *dc)
> {
> uint8_t b0 = cpu_ldub_code(env, dc->pc);
> return xtensa_op0_insn_len(dc, b0);
> }
>
> Or is this usage a re-read of something we've already got?
FWIW xtensa_insn_len is used to look into the instruction that
follows the one that has just been translated, but it may only
touch the same page as the last translated instruction.
--
Thanks.
-- Max
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Qemu-devel] [RFC v2 31/38] target/xtensa: fetch code with translator_ld,
Max Filippov <=