Where to discuss/ask questions about target feature design?

Apologies for asking for "help" here, but I'm really looking to be routed to a more appropriate place, and I'm not sure where that place is.

I have a pretty specific question about how certain ARM64 hwcaps map to Rust's target features on aarch64 platforms (namely, the sha3 target feature on both aarch64-unknown-linux-gnu and aarch64-apple-darwin implies support for SHA-512, and I'd like to know why).

Where is the most appropriate place to ask about that? Is it a stdarch concern, or should I e.g. file an issue against the compiler itself?

LLVM groups them together too:

Rust target features normally match the LLVM ones. Only a couple are slightly renamed, but never functionally different.

Aah, interesting. Hard to argue with that.

It's just a bit confusing because they are distinct in the ID_AA64ISAR0_EL1 registers and by extension the Linux hwcaps as well as the macOS/M1 sysctl(3) namespace.

https://www.kernel.org/doc/html/latest/arm64/elf_hwcaps.html

  • HWCAP_SHA512: Functionality implied by ID_AA64ISAR0_EL1.SHA2 == 0b0010.
  • HWCAP_SHA3: Functionality implied by ID_AA64ISAR0_EL1.SHA3 == 0b0001.

And on macOS/M1:

$ sysctl hw.optional | grep sha
hw.optional.armv8_2_sha3: 1
hw.optional.armv8_2_sha512: 1

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.