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
Activity
gopherbot commentedon Jun 13, 2022
Change https://go.dev/cl/397754 mentions this issue:
cpu: support darwin/arm64 feature detection
cpu: support darwin/arm64 feature detection
gopherbot commentedon Sep 29, 2024
Change https://go.dev/cl/616555 mentions this issue:
sha3: add SIMD implementation with ARMv8.2 features