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

Take the memory operand size for some hw intrinsic instructions #57603

Merged
4 commits merged into from
Aug 30, 2021

Conversation

kunalspathak
Copy link
Member

For certain HW intrinsic instructions like insert/extract, during outputting, we should check the memory operand size rather than the data operand size to determine if the memory is correctly aligned. We already have special handling during emitDispIns() but should be done also during outputting.

I tried searching around id->idOpSize() for other places this must be happening and don't see anything except at the code path I updated. While I was there, also pass precalculated simdSize value instead of recalculating it again.

Fixes: #57458

@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 Aug 17, 2021
@ghost
Copy link

ghost commented Aug 17, 2021

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

Issue Details

For certain HW intrinsic instructions like insert/extract, during outputting, we should check the memory operand size rather than the data operand size to determine if the memory is correctly aligned. We already have special handling during emitDispIns() but should be done also during outputting.

I tried searching around id->idOpSize() for other places this must be happening and don't see anything except at the code path I updated. While I was there, also pass precalculated simdSize value instead of recalculating it again.

Fixes: #57458

Author: kunalspathak
Assignees: -
Labels:

area-CodeGen-coreclr

Milestone: -

@kunalspathak
Copy link
Member Author

Failures are related to #57620

@kunalspathak kunalspathak marked this pull request as ready for review August 18, 2021 13:15
@kunalspathak
Copy link
Member Author

@dotnet/jit-contrib @tannergooding

Copy link
Member

@tannergooding tannergooding left a comment

Choose a reason for hiding this comment

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

LGTM.

I'm not sure if we've exhaustively checked instructions for places where the attr size and the memory size can differ. The display handling was best effort based on known issues, afair.

@ghost
Copy link

ghost commented Aug 30, 2021

Hello @kunalspathak!

Because this pull request has the auto-merge label, I will be glad to assist with helping to merge this pull request once all check-in policies pass.

p.s. you can customize the way I help with merging this pull request, such as holding this pull request until a specific person approves. Simply @mention me (@msftbot) and give me an instruction to get started! Learn more here.

@ghost ghost merged commit 7ec2bb0 into dotnet:main Aug 30, 2021
@ghost ghost locked as resolved and limited conversation to collaborators Sep 30, 2021
This pull request was closed.
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.

Test failure:Regressions\\coreclr\\GitHub_34094\\Test34094\\Test34094.cmd
2 participants