This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPU] Add GFX11 llvm.amdgcn.permlane64 intrinsic
ClosedPublic

Authored by foad on Jun 13 2022, 8:47 AM.

Details

Summary

Compared to permlane16, permlane64 has no BC input because it has no
boundary conditions, no fi input because the instruction acts as if FI
were always enabled, and no OLD input because it always writes to every
active lane.

Also use the new intrinsic in the atomic optimizer pass.

Diff Detail

Event Timeline

foad created this revision.Jun 13 2022, 8:47 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 13 2022, 8:47 AM
foad requested review of this revision.Jun 13 2022, 8:47 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 13 2022, 8:47 AM
foad added a reviewer: Restricted Project.Jun 13 2022, 8:47 AM
rampitec accepted this revision.Jun 13 2022, 12:16 PM
rampitec added inline comments.
llvm/lib/Target/AMDGPU/VOP1Instructions.td
522

A small nit: maybe VOP_MOVRELS needs a new name now.

This revision is now accepted and ready to land.Jun 13 2022, 12:16 PM
This revision was landed with ongoing or failed builds.Jun 13 2022, 1:12 PM
This revision was automatically updated to reflect the committed changes.
foad added inline comments.Jun 13 2022, 1:13 PM
llvm/lib/Target/AMDGPU/VOP1Instructions.td
522

Sure, if anyone has a good idea for a name.

rampitec added inline comments.Jun 13 2022, 2:30 PM
llvm/lib/Target/AMDGPU/VOP1Instructions.td
522

I can suggest VOP1_SRC_VGPR.