and the x86 translation hit is much worse on Windows than Mac
I think the lesser transition hit has a lot to do with a couple of Firestorm's features.
1) The memory management being capable of mimicking x86 ISA.
2) Some instruction set called LSE2 (Large System Extensions 2). Ryan Houdek, one of the devs for
FEX-emu identifies this as having significant perf benefits for running x86 code on ARM64, it was not in Cortex X1, but it can be found in its Neoverse sibling V1/Zeus aswell as the newer Cortex A710 and X2 CPU cores, so we shall see how much better SoC's based on them do with x86 binary translation.
A quick note, it seems like the FEX-emu guys are doing a bang up job of following in the footsteps of Rosetta 2 while coupling their work to DXVK when possible, worth checking out.