Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

Fix System.Numerics.Vectors CoreFx test failures#9496

Merged
CarolEidt merged 1 commit intodotnet:masterfrom
CarolEidt:FixCoreFx15713
Feb 11, 2017
Merged

Fix System.Numerics.Vectors CoreFx test failures#9496
CarolEidt merged 1 commit intodotnet:masterfrom
CarolEidt:FixCoreFx15713

Conversation

@CarolEidt
Copy link

CoreFx Issue 15713 is due to a case of an Indir(Addr(Field(Vector3 local))) which for some reason has a MorphAddrContext of MACK_Ind. Although I haven't fully identified why that is the case, we should be conservative in this case and mark the address as do-not-enregister.
In addition, when attempting to debug this with a Checked JIT, I encountered an AV due to GetJitTls returning null in the JITDUMP calls in getMaxIntrinsicSIMDVectorLength. Again, I'm not sure why this would be the case but I have added guarding conditions.

CoreFx Issue 15713 is due to a case of an Indir(Addr(Field(Vector3 local))) which for some reason has a MorphAddrContext of MACK_Ind. Although I haven't fully identified why that is the case, we should be conservative in this case and mark the address as do-not-enregister.
In addition, when attempting to debug this with a Checked JIT, I encountered an AV due to `GetJitTls` returning null in the `JITDUMP` calls in `getMaxIntrinsicSIMDVectorLength`. Again, I'm not sure why this would be the case but I have added guarding conditions.
@CarolEidt
Copy link
Author

@sivarv @BruceForstall PTAL
@jashook It looks like the arm64 failures are pre-existing
cc @dotnet/jit-contrib

@CarolEidt
Copy link
Author

@sivarv
Copy link
Member

sivarv commented Feb 10, 2017

:shipit:

return newTree;
}
}
else if ((objRef != nullptr) && (objRef->OperGet() == GT_ADDR) && varTypeIsSIMD(objRef->gtGetOp1()))

Choose a reason for hiding this comment

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

I hit cases before where we were getting into MACK_Ind contexts for Vector3 field access unexpectedly, and I fixed those reasons, so I'm worried this is treating the symptom, not the cause. However, if you believe this is a good, conservative fix, then I'm ok with it.

Copy link
Author

Choose a reason for hiding this comment

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

I'm still working on trying to figure out why we wind up in the MACK_Ind context. However, given that we do, I believe this is a conservative fix.

@CarolEidt
Copy link
Author

I can't reproduce the Windows_NT x64 Release failure, and it's difficult to imagine how these changes could have broken that test. Will retry.

@CarolEidt
Copy link
Author

@dotnet-bot test Windows_NT x64 Release Priority 1 Build and Test

@CarolEidt CarolEidt merged commit 0604f7e into dotnet:master Feb 11, 2017
CarolEidt added a commit to CarolEidt/coreclr that referenced this pull request Feb 11, 2017
CarolEidt added a commit that referenced this pull request Feb 11, 2017
jorive pushed a commit to guhuro/coreclr that referenced this pull request May 4, 2017
picenka21 pushed a commit to picenka21/runtime that referenced this pull request Feb 18, 2022
Fix System.Numerics.Vectors CoreFx test failures

Commit migrated from dotnet/coreclr@0604f7e
picenka21 pushed a commit to picenka21/runtime that referenced this pull request Feb 18, 2022
picenka21 pushed a commit to picenka21/runtime that referenced this pull request Feb 18, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants