On 19 December 2013 20:30, Richard Henderson <rth@xxxxxxxxxxx> wrote: > On 12/17/2013 07:12 AM, Peter Maydell wrote: >> +/* Force a TB lookup after an instruction that changes the CPU state */ >> +static inline void gen_lookup_tb(DisasContext *s) >> +{ >> + gen_a64_set_pc_im(s->pc); >> + s->is_jmp = DISAS_UPDATE; >> +} >> + > > I'm a bit surprised that this set_pc doesn't happen in > gen_intermediate_code_internal_a64. Otherwise, what's the point in > distinguishing between DISAS_JUMP and DISAS_UPDATE? I just borrowed this from the 32 bit decoder, which also sets PC in gen_lookup_tb(). However you're right that we might as well do the set pc in the top level loop. I've adjusted that loop to do so and dropped the gen_lookup_tb() function in favour of just setting s->is_jmp = DISAS_UPDATE directly at its callsites. thanks -- PMM _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm