This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPU] Split R600 and GCN bfe patterns
ClosedPublic

Authored by foad on Sep 30 2020, 8:28 AM.

Details

Summary

This is in preparation for making the GCN patterns divergence-aware.
NFC.

Diff Detail

Event Timeline

foad created this revision.Sep 30 2020, 8:28 AM
Herald added a project: Restricted Project. · View Herald TranscriptSep 30 2020, 8:28 AM
foad requested review of this revision.Sep 30 2020, 8:28 AM
arsenm added inline comments.Sep 30 2020, 11:02 AM
llvm/lib/Target/AMDGPU/SIInstructions.td
2360

This and these others can directly use 0

foad updated this revision to Diff 295514.Oct 1 2020, 3:21 AM

Remove unnecessary S_MOV_B32 from patterns.

arsenm accepted this revision.Oct 1 2020, 8:15 AM

LGTM. We do need a set for the scalar cases though

This revision is now accepted and ready to land.Oct 1 2020, 8:15 AM
foad added a comment.Oct 1 2020, 8:18 AM

We do need a set for the scalar cases though

It's currently being done by AMDGPUDAGToDAGISel::SelectS_BFE instead of with patterns, right? I guess you'd prefer patterns so GlobalISel can use them too?

arsenm added a comment.Oct 1 2020, 8:18 AM

We do need a set for the scalar cases though

It's currently being done by AMDGPUDAGToDAGISel::SelectS_BFE instead of with patterns, right? I guess you'd prefer patterns so GlobalISel can use them too?

Yes

This revision was automatically updated to reflect the committed changes.