Hacker News new | ask | show | jobs
by oblio 1997 days ago
Isn't Apple doing the exact same thing with their proprietary ARM ISA extensions?
1 comments

Their ISA extension is an ML-specific one, and macOS runs fine with it disabled. Their public compilers do not support it either.

You are supposed to use it through Accelerate.framework, which exposes a more traditional interface to that capability.

> Their ISA extension is an ML-specific one

Apple Silicon has more than one ISA extension.

There is also the x86 memory ordering extension used by Rosetta 2.

Maybe there are yet others too.

> There is also the x86 memory ordering extension used by Rosetta 2.

That one isn't really a requirement either, and is handled fully in kernel mode.

Wkdm and friends are handled fully in kernel mode.

APRR? Not a strict requirement for user-mode, JIT regions are just left as RWX without it.

Apple enforces APRR on macOS; you need to use their APIs to work within the confines of W^X.
There are more but they are not exposed to applications. Apple wants you to ship standard arm64 code.