aarch64-nintendo-switch-freestanding - Enable CPU features that are always available in a live system (crypto instructions, plus explicit NEON). #144613
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
While some NEON and crypto features may not be supported on the Nintendo Switch at boot (e.g. on the a53 cores) and this has not been tested, the features will always be available if running as a sysmodule or homebrew application under Horizon/Atmosphere.EDIT: the a53 cores are fused out, these features are always available.This has been tested with local tools personally, as well as building emuiibo as it uses both
sha
andaes
primitives. This was tested using inline assembly in previous versions, and in current versions by using theaes
,ctr
,hmac
, andsha2
crates.r? @jam1garner
This ended up being much delayed from our discussions about updating this. I tested a number of individual features such as the
aes
andsha2
target-features directly to avoid a warning message with thecrypto
feature, but that appears to be caused by #96472 and is not actually an issue.There is also a decision to make here about explicitly enabling the
neon
feature. I am in favor of it to be explicit, but it is not necessary as it is already enabled by thev8a
andcrypto
features. I will defer to your decision as it does not change the actual instructions available for codegen.