On 10/12/2025 13:16, Paolo Bonzini wrote:
> PUSHF needs to compute the full eflags, set the cc_op to
> CC_OP_EFLAGS.
>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
> target/i386/tcg/emit.c.inc | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/target/i386/tcg/emit.c.inc b/target/i386/tcg/emit.c.inc
> index 1a7fab9333a..22e53f5b000 100644
> --- a/target/i386/tcg/emit.c.inc
> +++ b/target/i386/tcg/emit.c.inc
> @@ -3250,6 +3250,8 @@ static void gen_PUSHF(DisasContext *s, X86DecodedInsn *decode)
> gen_update_cc_op(s);
> gen_helper_read_eflags(s->T0, tcg_env);
> gen_push_v(s, s->T0);
> + decode->cc_src = s->T0;
> + decode->cc_op = CC_OP_EFLAGS;
> }
>
> static MemOp gen_shift_count(DisasContext *s, X86DecodedInsn *decode,
Hi Paolo,
I noticed that my WFW 3.11 test image stopped working with master, and a
quick session with git bisect pointed me towards this patch.
I'll see if I can dig further into it.
ATB,
Mark.