3 ms·
That’s not really an executable linking issue. That’s the OS dropping support for 32-bit code in general from Catalina onwards.
by dagmx 4y ago
That’s not really an executable linking issue. That’s the OS dropping support for 32-bit code in general from Catalina onwards.
- kitsunesoba 4y agoAnd it was no doubt done to ease the transition to ARM… it means no need to implement 32-bit support in Rosetta.
- cwzwarich 4y agoRosetta does support executing 32-but code in alternate code segments created in a 64-bit process, used by CodeWeavers’ Crossover: https://www.codeweavers.com/blog/jwhite/2020/11/18/okay-im-on-the-bandwagon-apple-silicon-is-officially-cool https://www.codeweavers.com/blog/jwhite/2020/11/18/okay-im-o...
- dagmx 4y agoThis post here has a section on the reasons to drop 32-bit https://pilky.me/apples-technology-transitions/ https://pilky.me/apples-technology-transitions/ But essentially storage and memory savings, maintainability savings and some issues with the ObjC runtime. I assume part of the issue too is being able to enable pointer authentication, which afaik uses the higher end bits to store data, and being able to do that allows them to secure the OS better. So 32-bit support likely was a security risk factor as a result too.