-
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
Ensure Vector.Sum uses SSE3, rather than SSSE3, for floating-point #54123
Conversation
This wasn't caught by the ISA tests that were run as those only run for the runtime side tests and only library side tests were added. I've added a runtime side test, mirroring the other runtime tests for Vector, to help ensure this gets the per-ISA validation. |
/azp run runtime-coreclr jitstress-isas-x86, runtime-coreclr jitstress-isas-arm |
Azure Pipelines successfully started running 2 pipeline(s). |
Thanks @tannergooding. Looking at this now I can see that SSSE3 HorizontalAdd is not supported for floats and doubles, but I must have missed it when using it. I actually tried to see if somehow the macros that are generating the NI_ enums could also have comments generated with them, which would include information for which native types the instruction is supported, but I failed. For example I think it would be invaluable to have something like: /// <summary>Supported for ...</summary>
NI_SSSE3_HorizontalAdd |
That information is all in the metadata table here (either an instruction or The expansion of a macro isn't normally visible without explicitly running an explicit compilation step and saving the pre-processor output, so I don't think having a comment would be beneficial. |
/azp run runtime-coreclr jitstress-isas-x86, runtime-coreclr jitstress-isas-arm |
Azure Pipelines successfully started running 2 pipeline(s). |
ARM64 failures are unrelated (#54125). |
This resolves #54119 and was introduced in #53527
CC. @zlatanov, @echesakovMSFT