Description
darwin/arm64
support for internal/cpu
was implemented in c155931 using a mix of dynamic detection with sysctlbyname and hardcoded minimal feature support assumed on darwin/arm64
.
For x/sys/cpu
it can be assumed it only needs to work with Go 1.16 and newer. Interestingly darwing/arm64 was previosly used for the now ios/arm64 port. We should keep compatibility such that old code still compiles pre Go 1.16 even if there may be no runtime detection supported.
Implementing support for x/sys/cpu
will be a bit more complex. While x/sys/cpu
does not need to be as low dependency as internal/cpu
it should still avoid uncommon or large dependencies. Note that x/sys/cpu
is vendored into the standard library for some crypto support that is also vendored in.
x/sys/cpu
should avoid a dependency on x/sys/unix
: #32102