On Tue, Sep 11, 2012 at 5:34 PM, Aurelien Jarno <aurel...@aurel32.net>wrote:

> On Sun, Sep 09, 2012 at 08:19:59PM -0400, crwu...@gmail.com wrote:
> > From: Chris Wulff <crwu...@gmail.com>
> >
> > Signed-off-by: Chris Wulff <crwu...@gmail.com>
>
> > +    tcg_gen_movi_tl(dc->cpu_R[R_RA], dc->pc + 4);
> > +    tcg_gen_movi_tl(dc->cpu_R[R_PC],
> > +                    (dc->pc & 0xF0000000) | (instr->imm26 * 4));
> > +
> > +    dc->is_jmp = DISAS_JUMP;
> > +}
> > +
>
> You probably want to add some tcg_gen_goto_tb() for static jumps, so
> that TB linking is possible. It greatly improves the speed of the
> emulation.
>
>
>
Doing this actually made quite a big difference. The reported bogomips from
linux went up 15x and the observable speed by about 2x. The rest of your
suggested changes didn't have much noticeable effect but were at least good
things to clean up anyway.

  -- Chris Wulff

Reply via email to