On 06/28/2017 07:13 AM, Lluís Vilanova wrote:
@@ -11377,6 +11385,9 @@ static void aarch64_trblock_tb_stop(DisasContextBase
*dcbase, CPUState *cpu)
break;
}
}
+
+ /* Functions above can change dc->pc, so re-align db->pc_next */
+ dc->base.pc_next = dc->pc;
}
static void aarch64_trblock_disas_log(const DisasContextBase *dcbase,
Surely this belonged in a previous patch.
DisasContext dc1, *dc = &dc1;
Drop the dc1 thing.
+ translate_block(
+#ifdef TARGET_AARCH64
+ ARM_TBFLAG_AARCH64_STATE(tb->flags) ?
+ &aarch64_translator_ops :
#endif
+ &arm_translator_ops,
It would be nicer to avoid the ifdef within the parameter list.
Maybe pull the ops pointer computation to a separate statement.
r~