This change enables VOP3 shifts to be explicitly selected dependent on the divergence.
Tests: CodeGen/AMDGPU passed
Paths
| Differential D52559
[AMDGPU] Divergence driven instruction selection. Shift operations. ClosedPublic Authored by alex-t on Sep 26 2018, 9:31 AM.
Details Summary This change enables VOP3 shifts to be explicitly selected dependent on the divergence. Tests: CodeGen/AMDGPU passed
Diff Detail Event TimelineHerald added subscribers: t-tye, tpr, dstuttard and 6 others. · View Herald TranscriptSep 26 2018, 9:31 AM Comment Actions Pattern changed to GCNPat, divergence check added.
rampitec added inline comments.
This revision now requires changes to proceed.Sep 27 2018, 11:25 AM
This revision is now accepted and ready to land.Sep 28 2018, 8:31 AM Closed by commit rL343455: [AMDGPU] Divergence driven instruction selection. Shift operations. (authored by alex-t). · Explain WhyOct 1 2018, 4:08 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 167153 lib/Target/AMDGPU/SOPInstructions.td
lib/Target/AMDGPU/VOP3Instructions.td
lib/Target/AMDGPU/VOPInstructions.td
|
It sounds like from your explanation below and the logic of the getVOP3Pat this will create a bogus pattern with wrong operand order. Only one pattern shall exist for (shl i64:x, i32:y) and it seems to be the pattern below. At best this one will never match.