-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fill out hardware intrinsics linker substitutions for unsupported platforms #44156
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
If we get a doc up on adding new HWIntrinsics, we should ensure that updating this file is included as part of the process.
Tagging subscribers to this area: @tannergooding, @jeffhandley |
@@ -9,6 +9,9 @@ | |||
<type fullname="System.Runtime.Intrinsics.Arm.Aes"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's worth splitting this up to to arm and arm64 files so we can disable arm64 intrinsics on arm builds.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't support intrinsics on arm32 at all at this point. Check out the project file, we only support arm intrinsics on arm64:
runtime/src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems
Line 14 in 598426c
<SupportsArmIntrinsics Condition="'$(Platform)' == 'arm64'">true</SupportsArmIntrinsics> |
We can split the file in the future when arm32 support is understood.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok, will split that once we support them
Added the recently added arm intrinsics classes:
Dp
andRdm
to the linker subsitutions.I also ensured all the 64-bit nested classes are substituted as well, even if they don't have any methods.
Fix #44146