News for hackers. Stuff that matters.
Re:Apple Silicon M1 Emulating x86 Is Still Faster Than Every... by avianlyric on Sunday November 15, 2020 @07:38PM (#25106556)
I wouldn’t assume that there isn’t a licence involved.

Intel have clearly indicated in the past that they think licensing is a requirement for emulating x86[0].

I imagine that Apple are only emulating x86-64, since they dropped 32bit support in their last OS. I believe that x86-64 is owned by AMD, so I imagine Apple has a licensing deal with them.

[0] https://www.forbes.com/sites/tiriasresearch/2017/06/16/intel...

Re:Apple Silicon M1 Emulating x86 Is Still Faster Than Every... by saagarjha on Sunday November 15, 2020 @08:09PM (#25106798)
Apparently Rosetta emulates 32-bit as well (of course, the kernel will not load these binaries directly). I can only think of CrossOver that needs it, so I'm not quite sure why they went through the effort to add it…
Re:Apple Silicon M1 Emulating x86 Is Still Faster Than Every... by aparashk on Sunday November 15, 2020 @09:39PM (#25107354)
Do you have a reference for this? If true, this could have some interesting implications...
Re:Apple Silicon M1 Emulating x86 Is Still Faster Than Every... by saagarjha on Sunday November 15, 2020 @09:45PM (#25107394)
Re:Apple Silicon M1 Emulating x86 Is Still Faster Than Every... by klelatti on Sunday November 15, 2020 @08:11PM (#25106818)
I think that the legal requirements will depend on the precise instructions - eg your linked article mentions SIMD. Certainly the basic x86-64 extension to x86 originated at AMD who (due to cross license deals) licenses them to Intel but things like AVX are Intel. I suspect that code emitted by Xcode omits these newer instructions.

Bear in mind too that a lot of the x86 patents will have expired by now.

Re:Apple Silicon M1 Emulating x86 Is Still Faster Than Every... by saagarjha on Sunday November 15, 2020 @08:14PM (#25106836)
Xcode will emit those if you ask for it, and macOS ships some binaries that use those instructions. However, Rosetta doesn't do AVX.
Re:Apple Silicon M1 Emulating x86 Is Still Faster Than Every... by klelatti on Sunday November 15, 2020 @08:15PM (#25106846)
Interesting. How does Rosetta deal with apps with AVX then?
Re:Apple Silicon M1 Emulating x86 Is Still Faster Than Every... by wmf on Sunday November 15, 2020 @08:24PM (#25106916)
Such apps will use CPUID to detect that AVX is not implemented and they won't use any AVX instructions.
Re:Apple Silicon M1 Emulating x86 Is Still Faster Than Every... by klelatti on Sunday November 15, 2020 @09:15PM (#25107215)
Of course. So Rosetta will simply follow the non AVX path.