[PATCH] D38906: AMDGPU/SI: Implement d16 support for buffer intrinsics
Changpeng Fang via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 22 13:31:41 PST 2017
cfang added a comment.
================
Comment at: lib/Target/AMDGPU/BUFInstructions.td:1464-1475
+let SubtargetPredicate = HasUnpackedD16VMem in {
+defm : MTBUF_LoadIntrinsicPat<SItbuffer_load, f16, "TBUFFER_LOAD_FORMAT_D16_X_gfx80">;
+defm : MTBUF_LoadIntrinsicPat<SItbuffer_load_d16, v2i32, "TBUFFER_LOAD_FORMAT_D16_XY_gfx80">;
+defm : MTBUF_LoadIntrinsicPat<SItbuffer_load_d16, v4i32, "TBUFFER_LOAD_FORMAT_D16_XYZW_gfx80">;
+} // End HasUnpackedD16VMem.
+
+let SubtargetPredicate = HasPackedD16VMem in {
----------------
nhaehnle wrote:
> Are the pattens with SItbuffer_load and 16-bit types ever used? I believe the f16 maybe, but isn't the v2f16 getting replaced by ReplaceNodeResults?
>
ReplaceNodeResults will only replace illegal vector types (v2f16 on gfx8 and v4f16 on gfx8+).
So the pattens with SItbuffer_load and v2f16 are used for gfx9+ (and f16 are used for gfx8+).
https://reviews.llvm.org/D38906
More information about the llvm-commits
mailing list