Skip to content
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 Vector2/3/4, Quaternion, and Plane don't have a false dependency on Vector<T> #86481

Merged
merged 6 commits into from
May 20, 2023

Conversation

tannergooding
Copy link
Member

Extracted from #85551

@dotnet-issue-labeler dotnet-issue-labeler bot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label May 19, 2023
@ghost ghost assigned tannergooding May 19, 2023
@ghost
Copy link

ghost commented May 19, 2023

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

Issue Details

Extracted from #85551

Author: tannergooding
Assignees: tannergooding
Labels:

area-CodeGen-coreclr

Milestone: -

@@ -8332,10 +8332,7 @@ NamedIntrinsic Compiler::lookupNamedIntrinsic(CORINFO_METHOD_HANDLE method)
CORINFO_SIG_INFO sig;
info.compCompHnd->getMethodSig(method, &sig);

int sizeOfVectorT = getSIMDVectorRegisterByteLength();
Copy link
Member Author

@tannergooding tannergooding May 19, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is what gave the "false dependency" on all intrinsic APIs under System.Numerics.

It gave a query that was compExactlyDependsOn(InstructionSet_AVX2) which in turn meant it opted out of any default pre-jit support.

The check was instead moved down to APIs on Vector<T> itself -or- APIs that took/returned Vector<T> elsewhere.

It does not include all APIs on System.Numerics.Vector as we have a couple extension methods for Vector2/3/4, Quaternion, and Plane that live on the same class

@tannergooding
Copy link
Member Author

tannergooding commented May 20, 2023

Failure is dotnet/arcade#13625 and reproducing on other PRs

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants