-
Notifications
You must be signed in to change notification settings - Fork 13.1k
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
AMDGPU should handle SimplifyDemandedVectorElts for more trivial intrinsics #131734
Comments
Hi! This issue may be a good introductory issue for people new to working on LLVM. If you would like to work on this issue, your first steps are:
If you have any further questions about this issue, don't hesitate to ask via a comment in the thread below. |
@llvm/issue-subscribers-good-first-issue Author: Matt Arsenault (arsenm)
As a follow up to https://github.com//pull/128647, more intrinsics should be handled in SimplifyDemandedVectorElts.
This includes: Intrinsic::amdgcn_readlane, Intrinsic::amdgcn_update_dpp, Intrinsic::amdgcn_permlane16, Intrinsic::amdgcn_permlanex16, Intrinsic::amdgcn_permlane64 and Intrinsic::amdgcn_mov_dpp8 This is mostly a matter of adding the intrinsics to the switch, some boilerplate to keep the other immediate operands as they are, and adding tests similar to the ones added in #128647 |
@llvm/issue-subscribers-backend-amdgpu Author: Matt Arsenault (arsenm)
As a follow up to https://github.com//pull/128647, more intrinsics should be handled in SimplifyDemandedVectorElts.
This includes: Intrinsic::amdgcn_readlane, Intrinsic::amdgcn_update_dpp, Intrinsic::amdgcn_permlane16, Intrinsic::amdgcn_permlanex16, Intrinsic::amdgcn_permlane64 and Intrinsic::amdgcn_mov_dpp8 This is mostly a matter of adding the intrinsics to the switch, some boilerplate to keep the other immediate operands as they are, and adding tests similar to the ones added in #128647 |
I don't see why this is specific to AMDGPU. It should apply to any |
Can I take this up |
@arsenm hello how do I handle |
@arsenm Do we only support the instrinsic from ll to ll? I am gettting this error when trying to see the assembly ouput:
|
And it would stuck there if using option -global-sel
|
1 X vectors are a degenerate case, the backend doesn't treat them as legal. These should use the scalar type instead (i.e replace '<1 x i16>' with 'i16' |
As a follow up to #128647, more intrinsics should be handled in SimplifyDemandedVectorElts.
This includes: Intrinsic::amdgcn_readlane, Intrinsic::amdgcn_update_dpp, Intrinsic::amdgcn_permlane16, Intrinsic::amdgcn_permlanex16, Intrinsic::amdgcn_permlane64 and Intrinsic::amdgcn_mov_dpp8
This is mostly a matter of adding the intrinsics to the switch, some boilerplate to keep the other immediate operands as they are, and adding tests similar to the ones added in #128647
The text was updated successfully, but these errors were encountered: