On 09/19/2012 11:30 AM, Peter Maydell wrote: > On 19 September 2012 19:01, Richard Henderson <r...@twiddle.net> wrote: >> On 09/19/2012 10:51 AM, Aurelien Jarno wrote: >>> That said it is not a valid reason to not keep the value during >>> re-translation, as it means the TB will exit instead of linking to >>> the next one. The consequences are only the performance. >> >> We still have the problem of when is the goto_tb link initialized the >> *first* time? >> Where we expect the goto_tb to fall through to stuff+exit_tb? >> >> For i386 it's during translation, with no care for re-translation. >> >> For ARM? I can't see that it is. > > I think the answer to this is that the only caller of cpu_gen_code() > is tb_gen_code(), which always then calls tb_link_page() > which calls tb_reset_jump() which calls tb_set_jmp_target().
That looks correct. If convoluted. ;-) >> For PPC, malc has already verified that it *never* happens. If he >> puts "trap" insns there instead of "nop" insns, he'll see the trap. > > ...but on the other hand that ought to work for PPC too, so > presumably my analysis is wrong somewhere. malc? Breakpoint on ppc_tb_set_jmp_target? r~