[PATCH] D135609: [AMDGPU] Fix True16 patterns for cmp on GFX11
Joe Nash via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 12 07:56:23 PDT 2022
Joe_Nash marked an inline comment as not done.
Joe_Nash added inline comments.
================
Comment at: llvm/test/CodeGen/AMDGPU/v_cmp_gfx11.ll:16
+entry:
+ %0 = tail call i64 @llvm.amdgcn.icmp.i64.i16(i16 0, i16 0, i32 32)
+ %cmp0 = icmp eq i64 %0, 0
----------------
Joe_Nash wrote:
> arsenm wrote:
> > arsenm wrote:
> > > Should also test llvm.amdgcn.fcmp. I'd assume that's missing coverage too if this was broken
> > Plus ballot
> Is ballot well defined for 16 bit destinations? I think ballot should work over the waveSize, so only 32 or 64 bit returns are valid.
> For an instrinsic like this
>
> ```
> declare i16 @llvm.amdgcn.ballot.i16(i1)
> ```
> I would expect a problem here
> AMDGPUInstructionSelector.cpp:1226
> AMDGPUInstructionSelector::selectBallot
>
> ```
> if (Size != STI.getWavefrontSize())
> return false;
> ```
On second thought, I think you probably meant a test of a 16 bit compare feeding into ballot. See test https://reviews.llvm.org/D135782
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D135609/new/
https://reviews.llvm.org/D135609
More information about the llvm-commits
mailing list