[PULL,06/18] target/arm/translate.h: expand comment on DISAS_EXIT

Message ID 1500295494-8991-7-git-send-email-peter.maydell@linaro.org
State Accepted
Commit abd1fb0ee2c58b99f4b2d15718f1825fe4984e12
Headers show
  • target-arm queue
Related show

Commit Message

Peter Maydell July 17, 2017, 12:44 p.m.
From: Alex Bennée <alex.bennee@linaro.org>

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>

Reviewed-by: Richard Henderson <rth@twiddle.net>

Message-id: 20170713141928.25419-4-alex.bennee@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

 target/arm/translate.h | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)



diff --git a/target/arm/translate.h b/target/arm/translate.h
index 15d383d..12fd79b 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