Mostly yes, but one caveat on "target/i386: clear C1 for all x87 compare
instructions": part of that commit is wrong.
The FCOM/FCOMP/FCOMPP/FUCOM/FUCOMP/FUCOMPP/FICOM/FICOMP part is correct and
hardware-verified. The FCOMI/FCOMIP/FUCOMI/FUCOMIP part is not: the SDM lists
"C1 Set to 0" for those, but real x86-64 hardware leaves C1 unchanged. I
caught this after v2 was posted and sent a v3 dropping these changes
[https://patchew.org/QEMU/20260902135705.261863-1-scherer.simon89@gmail.com/],
but
v2 was the version applied.
I'm sending a follow-up fix on top of master now that reverts just the
fcomi/fucomi changes.
Simon
On Thu, Sep 10, 2026 at 8:02 PM Michael Tokarev <mjt@tls.msk.ru> wrote:
>
> On 9/9/26 18:56, Paolo Bonzini wrote:
> ...> Andrey Polivoda (1):
> > target/i386: Mark MOVNTI as not valid with prefixes 0x66, 0xF2, 0xF3
>
> > Simon Scherer (5):
> > target/i386: Fix FXCH to unconditionally clear C1
> > target/i386: clear C1 for all x87 compare instructions
> > target/i386: Update FPU tag word for FXTRACT's old ST(0)
> > target/i386: Update FPU tag word for FSTP
> > target/i386: Update FPU tag word for FXCH
>
> Actually, it looks like this whole lot should be picked up for qemu stable,
> is it not?
>
> Thanks,
>
> /mjt