4 ms·
Does Apple's M1 still support AArch32, it using an ARMv8.4-A instruction set ? I'm assuming no 32-bit code is ever executed on macOS on ARM, how much die space
by Aaargh20318 5y ago
Does Apple's M1 still support AArch32, it using an ARMv8.4-A instruction set ? I'm assuming no 32-bit code is ever executed on macOS on ARM, how much die space would removing the 32-bit support save ?
With WWDC '21 being only weeks away, I wonder if we're going to see an ARMv9 M2.
- djxfade 5y agoI'm pretty sure the M1 does not have AArch32 hardware on it's die. It wouldn't make any sense.
- my123 5y agoAArch32 is not implemented on Apple CPUs since quite a long time now.
- Aaargh20318 5y agoIs AArch32 support optional in ARMv8.4-A ?
- TNorthover 5y agoIt has been all along.
- macintux 5y agoDoesn’t seem that long ago that Apple implementing 64-bit ARM CPUs was derided as a publicity stunt.
- _joel 5y agoM2's already in fabrication, as to being ARMv9, not sure. https://asia.nikkei.com/Business/Tech/Semiconductors/Apple-s-follow-up-to-M1-chip-goes-into-mass-production-for-Mac https://asia.nikkei.com/Business/Tech/Semiconductors/Apple-s...
- rejectedandsad 5y agoI want to emphasize it's unknown whether this is the successor to the M1 by major or minor version - but it's more likely that this is a production ramp-up for the new Pro machines to be announced during WWDC and will likely ship later this summer. The successor to the M1, the lowest-end Apple Silicon running on Macs, is likely expected next year in a rumored redesign of the Macbook Air (whatever the CPU itself is called)
- billiam 5y agoThis is what I am banking on. I want to get another year out of my old Intel Macs before getting an MX-based Macbook that should melt my eyeballs with its speed while lasting a day and a half on battery.
- api 5y agoEverything I've heard says it's an M1 with more performance cores and possibly more cache and GPU cores. It seems awfully soon for it to be V9.
- _joel 5y agoAh OK, that makes sense
- arnd 5y agoM1 is Armv8.5-A, which is almost the same as Armv9.0-A, except that it lacks SVE2 vector instructions. Apple's CPUs tend to move to the latest architecture revision that is available at the time the instruction set gets nailed down, so the next generation (M2 and A15) would be Armv8.6-A if it lacks SVE2, or Armv9.1-A if it includes it. Most likely the M2/A15 will include SVE2 but won't be available for another six months, while the M1+ in the coming Macbook Pro would still be Armv8.5-A.
- marcan_42 5y agoNo. There is no AArch32 on the M1. Even things like the A32 relevant bits in the Apple-proprietary performance counters are reserved and unimplemented.
- glhaynes 5y agoiOS 11 was the first Apple OS to not run 32-bit apps so I'm guessing the iPhone X that was released later that year (2017) with the A11 Bionic chip was the first to drop 32-bit support.
- mumblemumble 5y agoYep, that was the one. Perhaps more relevant to the M1, though, is that OS X dropped support for 32-bit apps about 18 months back, with Catalina. The timing there seems just too coincidental to not have been done in order to pave the way for the M1.
- _ph_ 5y agoIndeed. I think throwing out 32 bit support in Catalina was in preparation for the M1 one year later. Not so much because the M1 is 64 bit only, as 32 bit x86 applications wouldn't have run on it either way. Perhaps to make Rosetta simpler, as it only had to support 64 bit code. But also with Catalina, all old and unmaintained applications did no longer run. Those applications, which run on Catalina, do run on M1. Which made the switch from x86 to ARM cpus much smoother for the users. The hard cut had been done with Catalina already - and this is the reason my private Mac still runs Mojave :p. When I get a new Mac, switching to ARM doesn't create any less backwards compatibility than switching to Catalina would...
- my123 5y agoRosetta supports translating 32-bit x86 instructions. However, there are no native 32-bit OS libs anymore. This means that you have to do the thunking back and forth yourself to call OS libraries. The only x86 program using this facility so far is Wine/CrossOver on Apple Silicon Macs, which as such runs 32-bit x86 apps...
- spijdar 5y agoAFAIK none of the (current) apple produced processors do 32 bit, even the apple watch. Which is interesting, as it is very memory constrained, the usual reason for using 32 bit code. Judging by some LLVM patches by an apple engineer, they solved this by creating an ILP32 mode for Aarch64 where they use the full 64 bit mode but with 32 bit pointers.
- hajile 5y agoARMv9 requires SVE. As M1 doesn't have SVE, I'd assume ARMv8.x. Wikipedia claims A14 is ARMv8.5-A, so that would be my best guess.