Magnus, can you test this series on MSHV?
On Fri, May 02, 2025 at 11:48:37PM +0200, Paolo Bonzini wrote:
> These are some improvements to the x86 emulator that I wrote but have no
> way of testing (right now).
>
> I tried to place them in order of importance so that, if something breaks,
> it is possible to commit a subset. I tried to compile the resulting code
> on Linux but I have not run it.
>
> Patch 1 is just to fix warnings on Linux.
>
> Patch 2 is the most important, as it fixes some real horrors in the code.
>
> Patch 3 makes flags handling use algorithms somewhat similar to TCG.
> It should fix issues with 64-bit ALU operations, but it's also the one
> where it's more likely to have a mistake.
>
> Patch 4 is comparatively trivial, though I cannot exclude any screwups.
>
> It should be possible to test this with both HVF and Hyper-V.
>
> Paolo
>
> Paolo Bonzini (4):
> target/i386/emulate: fix target_ulong format strings
> target/i386/emulate: stop overloading decode->op[N].ptr
> target/i386/emulate: mostly rewrite flags handling
> target/i386: remove lflags
>
> target/i386/cpu.h | 6 -
> target/i386/emulate/x86_decode.h | 9 +-
> target/i386/emulate/x86_emu.h | 8 +-
> target/i386/emulate/x86_flags.h | 12 +-
> target/i386/emulate/x86_decode.c | 76 ++++++------
> target/i386/emulate/x86_emu.c | 125 +++++++++----------
> target/i386/emulate/x86_flags.c | 198 +++++++++++++------------------
> 7 files changed, 197 insertions(+), 237 deletions(-)
>
> --
> 2.49.0
>