This patch implements d16 support for image load, image store and image sample intrinsics.
It depends on the following patch that is pending reviews:
https://reviews.llvm.org/D38906
The LIT tests are still under development and will be ready soon.
Paths
| Differential D39912
AMDGPU/SI: Implement d16 support for image intrinsics ClosedPublic Authored by cfang on Nov 10 2017, 11:13 AM.
Details Summary This patch implements d16 support for image load, image store and image sample intrinsics. The LIT tests are still under development and will be ready soon.
Diff Detail Event TimelineHerald added subscribers: t-tye, tpr, dstuttard and 4 others. · View Herald TranscriptNov 10 2017, 11:13 AM Comment Actions Pardon my ignorance, but why isn't include/llvm/IR/IntrinsicsAMDGCN.td being updated? Comment Actions
We did not add new intrinsics. We just add support for new data types. In IntrinsicsAMDGCN.td, we have already defined In other wordm llvm.amdgcn.image.load.v4f16 (for example) has already been declared in IntrinsicsAMDGCN.td. And this patch just needs to actually define (implement) it. Comment Actions
Ugh. I knew that. Sorry for the spam.
Comment Actions
NOTE: We may define more instructions than necessary for the "PACKED", but I would appreciate suggestions to get rid of them.
cfang added inline comments. cfang added inline comments. cfang marked 2 inline comments as done. Comment Actions
Comment Actions Don't know why I didn't received a message after I updated the patch. So ping here with the updating message:
Comment Actions Patched updated! Request for reviewer's check. Thanks. This revision is now accepted and ready to land.Jan 18 2018, 12:32 PM Comment Actions Patch committed to trunk:
Revision Contents
Diff 129912 lib/Target/AMDGPU/AMDGPUISelLowering.h
lib/Target/AMDGPU/AMDGPUISelLowering.cpp
lib/Target/AMDGPU/MIMGInstructions.td
lib/Target/AMDGPU/SIDefines.h
lib/Target/AMDGPU/SIISelLowering.cpp
lib/Target/AMDGPU/SIInstrFormats.td
lib/Target/AMDGPU/SIInstrInfo.h
lib/Target/AMDGPU/SIInstrInfo.td
test/CodeGen/AMDGPU/llvm.amdgcn.image.d16.ll
test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.d16.ll
test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.d16.ll
|
Since the register class is changing, there shouldn't be an operand for this. This is a separate MI opcode