From: Guenter Roeck Date: Mon, 12 Dec 2022 15:03:17 +0000 (-0600) Subject: target/sh4: Mask restore of env->flags from tb->flags X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=bc2331635ce18ff068d2bb1e493bc546e1f786e1;p=people%2Fpauldu%2Fqemu.git target/sh4: Mask restore of env->flags from tb->flags The values in env->flags are a subset of tb->flags. Restore only the bits that belong. Cc: qemu-stable@nongnu.org Fixes: ab419fd8a035 ("target/sh4: Fix TB_FLAG_UNALIGN") Signed-off-by: Guenter Roeck Message-ID: <20221212011345.GA2235238@roeck-us.net> [rth: Reduce to only the the superh_cpu_synchronize_from_tb change] Signed-off-by: Richard Henderson --- diff --git a/target/sh4/cpu.c b/target/sh4/cpu.c index 951eb6b9c8..f0934b20fa 100644 --- a/target/sh4/cpu.c +++ b/target/sh4/cpu.c @@ -47,7 +47,7 @@ static void superh_cpu_synchronize_from_tb(CPUState *cs, SuperHCPU *cpu = SUPERH_CPU(cs); cpu->env.pc = tb_pc(tb); - cpu->env.flags = tb->flags; + cpu->env.flags = tb->flags & TB_FLAG_ENVFLAGS_MASK; } static void superh_restore_state_to_opc(CPUState *cs,