Conversation

Replying to
I'm not actually aware of any Rosetta-related features that aren't TSO nor already in ARMv8.7. Let me know if you know of any. I don't think any non-Apple ARM chips implement *both* of those *today*, but nothing's stopping them, it's not magic Apple secret sauce.
3
163
(Nit: Apple's version of what FEAT_AFP does is proprietary because it predates the official spec, but it does the same thing, just with vendor-specific registers instead. Apple also have other pre-release ARM features implemented like that, like parts of FEAT_ECV.)
1
112
For completeness: did find one sneaky Apple-only feature, the parity flag bit. It's optional though, and Rosetta will run without it. also just tested Rosetta 2 on non-Apple hardware and it runs fine.
Quote Tweet
Replying to @marcan42
Hmm - it looks like they get the parity flag by using "MRS Xn, NZCV" and then reading it from (Xn & 0x4000000)... I didn't know about FEAT_AFP - is this a standard thing too?
74
Replying to
Don’t forget FEAT_LSE2 as well. Quite useful for emulating x86. The M1 does implement FEAT_LRCPC2 as well, but uses its TSO mode instead.
2