Message ID | 20170710192128.9048-4-alex.bennee@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | arm: fixes for eret, isb and DISAS_UPDATE handling | expand |
On 07/10/2017 09:21 AM, Alex Bennée wrote: > We already have an exit condition, DISAS_UPDATE which will exit the > run-loop. Expand on the difference with DISAS_EXIT in the comments. > > Signed-off-by: Alex Bennée<alex.bennee@linaro.org> > --- > target/arm/translate.h | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) Reviewed-by: Richard Henderson <rth@twiddle.net> r~
diff --git a/target/arm/translate.h b/target/arm/translate.h index 15d383d9af..12fd79ba8e 100644 --- a/target/arm/translate.h +++ b/target/arm/translate.h @@ -140,7 +140,10 @@ static void disas_set_insn_syndrome(DisasContext *s, uint32_t syn) */ #define DISAS_BX_EXCRET 11 /* For instructions which want an immediate exit to the main loop, - * as opposed to attempting to use lookup_and_goto_ptr. + * as opposed to attempting to use lookup_and_goto_ptr. Unlike + * DISAS_UPDATE this doesn't write the PC on exiting the translation + * loop so you need to ensure something (gen_a64_set_pc_im or runtime + * helper) has done so before we reach return from cpu_tb_exec. */ #define DISAS_EXIT 12
We already have an exit condition, DISAS_UPDATE which will exit the run-loop. Expand on the difference with DISAS_EXIT in the comments. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> --- target/arm/translate.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) -- 2.13.0