aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2021-05-14 10:13:19 -0500
committerRichard Henderson <richard.henderson@linaro.org>2021-05-19 12:15:47 -0500
commit3236c2ade2335d9ff3ea53e60cec024863983d90 (patch)
treeb6865cc7b375be10c7fabf79f705a88c015475fe
parent305d08e51260b7d3a6a20c9399ba49f2235c2d25 (diff)
target/i386: Fix the comment for repz_opt
After fixing a typo in the comment, fixup for CODING_STYLE. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20210514151342.384376-28-richard.henderson@linaro.org>
-rw-r--r--target/i386/tcg/translate.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/target/i386/tcg/translate.c b/target/i386/tcg/translate.c
index b9b94f0625..226fb62ccb 100644
--- a/target/i386/tcg/translate.c
+++ b/target/i386/tcg/translate.c
@@ -8521,15 +8521,10 @@ static void i386_tr_init_disas_context(DisasContextBase *dcbase, CPUState *cpu)
dc->cpuid_xsave_features = env->features[FEAT_XSAVE];
dc->jmp_opt = !(dc->base.singlestep_enabled ||
(flags & (HF_TF_MASK | HF_INHIBIT_IRQ_MASK)));
- /* Do not optimize repz jumps at all in icount mode, because
- rep movsS instructions are execured with different paths
- in !repz_opt and repz_opt modes. The first one was used
- always except single step mode. And this setting
- disables jumps optimization and control paths become
- equivalent in run and single step modes.
- Now there will be no jump optimization for repz in
- record/replay modes and there will always be an
- additional step for ecx=0 when icount is enabled.
+ /*
+ * If jmp_opt, we want to handle each string instruction individually.
+ * For icount also disable repz optimization so that each iteration
+ * is accounted separately.
*/
dc->repz_opt = !dc->jmp_opt && !(tb_cflags(dc->base.tb) & CF_USE_ICOUNT);