This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPU] Add pseudo SDWA instructions
ClosedPublic

Authored by SamWot on Dec 5 2016, 6:08 AM.

Event Timeline

SamWot updated this revision to Diff 80262.Dec 5 2016, 6:08 AM
SamWot retitled this revision from to [AMDGPU] Add pseudo SDWA instructions.
SamWot updated this object.
SamWot added a reviewer: vpykhtin.
SamWot edited edge metadata.Dec 5 2016, 6:10 AM
SamWot added a subscriber: Restricted Project.
arsenm added inline comments.Dec 5 2016, 4:05 PM
lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
1558–1560
lib/Target/AMDGPU/VOP2Instructions.td
635

Capitalize

lib/Target/AMDGPU/VOPInstructions.td
286

Really this should copy all of the other bits too. Is there an easy way to do that?

288

Capitalize

vpykhtin added inline comments.Dec 6 2016, 2:10 AM
lib/Target/AMDGPU/VOPInstructions.td
286

Matt, you're right but this is common place for all other Pseudo->Real transitions. When I did refactoring I supposed to introduce another common ancestor class based on InstSI that would copy all the bits. At the other hand these real instructions are not used any other way than encoding/decoding/asm and the majority of codegen flags aren't apply there. I suggest to leave this as is and do a separate change that would create the common real class with all bits copied.

arsenm added inline comments.Dec 6 2016, 3:40 PM
lib/Target/AMDGPU/VOPInstructions.td
286

Yes, this can be done later. We do use the direct encoded forms in a handful of places though in codegen

SamWot updated this revision to Diff 81564.Dec 15 2016, 4:43 AM

Rebased on top of master.
Fixed comments capitalization.

SamWot updated this revision to Diff 81746.Dec 16 2016, 5:56 AM
SamWot edited edge metadata.

Copy constraints from pseudo.

arsenm accepted this revision.Dec 21 2016, 7:23 AM
arsenm added a reviewer: arsenm.

LGTM

This revision is now accepted and ready to land.Dec 21 2016, 7:23 AM
This revision was automatically updated to reflect the committed changes.