Message ID | 20230113140419.4013-5-farosas@suse.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | target/arm: Allow CONFIG_TCG=n builds | expand |
On 13/1/23 15:03, Fabiano Rosas wrote: > Move this earlier to make the next patch diff cleaner. While here > update the comment slightly to not give the impression that the > misalignment affects only TCG. > > Reviewed-by: Richard Henderson <richard.henderson@linaro.org> > Signed-off-by: Fabiano Rosas <farosas@suse.de> > --- > target/arm/machine.c | 18 +++++++++--------- > 1 file changed, 9 insertions(+), 9 deletions(-) Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
diff --git a/target/arm/machine.c b/target/arm/machine.c index 5f26152652..b4c3850570 100644 --- a/target/arm/machine.c +++ b/target/arm/machine.c @@ -839,6 +839,15 @@ static int cpu_post_load(void *opaque, int version_id) } } + /* + * Misaligned thumb pc is architecturally impossible. Fail the + * incoming migration. For TCG it would trigger the assert in + * thumb_tr_translate_insn(). + */ + if (!is_a64(env) && env->thumb && (env->regs[15] & 1)) { + return -1; + } + hw_breakpoint_update_all(cpu); hw_watchpoint_update_all(cpu); @@ -856,15 +865,6 @@ static int cpu_post_load(void *opaque, int version_id) } } - /* - * Misaligned thumb pc is architecturally impossible. - * We have an assert in thumb_tr_translate_insn to verify this. - * Fail an incoming migrate to avoid this assert. - */ - if (!is_a64(env) && env->thumb && (env->regs[15] & 1)) { - return -1; - } - if (!kvm_enabled()) { pmu_op_finish(&cpu->env); }