This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPU] Update SIInsertHardClauses for GFX11
ClosedPublic

Authored by foad on Jun 9 2022, 3:44 AM.

Details

Summary

Changes for GFX11:

  • Clauses may not mix instructions of different types, and there are more types. For example image instructions with and without a sampler are now different types.
  • The max size of a clause is explicitly documented as 63 instructions. Previously it was implicitly assumed to be 64. This is such a tiny difference that it does not seem worth making it conditional on the subtarget.
  • It can be beneficial to clause stores as well as loads.

Diff Detail

Event Timeline

foad created this revision.Jun 9 2022, 3:44 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 9 2022, 3:44 AM
foad requested review of this revision.Jun 9 2022, 3:44 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 9 2022, 3:44 AM
foad added a reviewer: Restricted Project.Jun 9 2022, 3:44 AM
kosarev added inline comments.Jun 9 2022, 4:01 AM
llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp
187

We seem to use the value twice. What if to give it a name and move the comment to where we define it?

foad updated this revision to Diff 435514.Jun 9 2022, 5:50 AM

Define MaxInstructionsInClause.

foad marked an inline comment as done.Jun 9 2022, 5:51 AM
This revision is now accepted and ready to land.Jun 9 2022, 11:54 AM
This revision was landed with ongoing or failed builds.Jun 9 2022, 1:35 PM
This revision was automatically updated to reflect the committed changes.