-
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
System.Runtime.Intrinsics.X86.Bmi2 - ADCX and ADOX instructions missing. #72423
Comments
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label. |
Tagging subscribers to this area: @dotnet/area-system-runtime-intrinsics Issue DetailsThis issue has been moved from a ticket on Developer Community. System.Runtime.Intrinsics.X86.Bmi2.X64 supports MULX as:
But not the corresponding instructions: ADCX and ADOX. It could help to improve a new NET7 development: dotnet/runtime/71791 Or is it that the compiler generates corresponding code automatically? Original CommentsFeedback Bot on 7/10/2022, 11:22 PM:(private comment, text removed) Original Solutions(no solutions)
|
I can offer to test trial-versions since I have currently the perfect environment for this. Multiply is the main bottleneck in my solution for arbitrary arithmetic, could I double the speed the overall performance would double. I know it's difficult, I've implemented special algorithms in C++ before and this was difficult enough and not possible without inline ASM and lot of trials. But once it works and the right sequences found, the effect is amazing. It would be so nice to see the same in C#. |
@danmoseley Many thanks for the help with the issue - delegated to the right ones. |
There is nothing to do here right now. This issue needs to be fleshed out into a "proper" API proposal before it can move forward.
|
@tannergooding Sure. this is difficult for C#, I have done this in C++ and there it was difficult too, lots of trials and inline ASM to find the right sequences in combination with the right algorithms. Found something like a standard sequence that works for several multiplier. Maybe this could exposed as meta function for X64.Bmi2. I will write a proposal. |
Closing this in favor of a future formal API proposal, as discussed above. |
This issue has been moved from a ticket on Developer Community.
System.Runtime.Intrinsics.X86.Bmi2.X64 supports MULX as:
But not the corresponding instructions: ADCX and ADOX.
It could help to improve a new NET7 development: dotnet/runtime/71791
Or is it that the compiler generates corresponding code automatically?
I haven’t found anything documented about this.
Is there any other way to use the feature or is somthing planned?
Original Comments
Feedback Bot on 7/10/2022, 11:22 PM:
(private comment, text removed)
Original Solutions
(no solutions)
The text was updated successfully, but these errors were encountered: