Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Quite a lot of modern Arm 64 bit processors have dropped 32 bit (ie. ARMv7) support. Be careful what you wish for though! It's still useful to be able to run 32 bit i386 code at a decent speed occasionally. Even on my Linux systems I still have hundreds of *.i686.rpms installed.


The 64-bit ARM instructions were designed in a way that made supporting both modes in parallel very expensive from a silicon perspective. In contrast AMD were very clever with AMD64 and designed it such that very little additional silicon area was required to add it.


Citation needed. I'm told that Apple-designed cores have indeed dropped AArch32, and AFAIK, no others have. I don't think its fair to call "only the ones designed by Apple" "quite a lot".

The Cortex-A78 generation of Arm cores was the first set of Arm-designed cores that didn't support AArch32 at EL3, and they retain AArch32 support at EL0, even the N1 and X1. The early APM designed ARMv8 cores supported AArch32 at (at least) EL0, although I haven't kept up with that lineage. I haven't seen an nVidia-designed ARMv8 that dropped AArch32, although I also haven't worked with some of the newer ones.

I suspect that maintaining support at EL0 is very cheap, because it can be done entirely in the instruction decoder.


Cavium dropped Arm32 support in 2014: "Only the 64-bit AArch64 execution state is support. No 32-bit AArch32 support" https://en.wikichip.org/wiki/cavium/thunderx

Qualcomm dropped Arm32 in Falkor, which shipped in 2017: "AArch64 only" https://en.wikichip.org/wiki/qualcomm/microarchitectures/fal...

Arm64 is really a wild and radical departure from Arm32, they're night-and-day different which is why dumping 32-bit support is attractive. Compare this with x86 where you have a microcode backdoor^H^H^Hengine to smooth over the differences, or POWER64/MIPS64 which built off of very clean 32-bit designs and stayed true to them. And of course RISC-V is the non-trademark-infringing name for MIPS-VI.


There probably won't be any new high-performance cores supporting AArch32. It's already gone from Cortex-X2, Cortex-X3, Cortex-A715.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: