[PATCH] D117814: [AMDGPU] Do not ignore exec use where exec is read as data

Jay Foad via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 21 09:43:07 PST 2022


foad added a comment.

In D117814#3261636 <https://reviews.llvm.org/D117814#3261636>, @rampitec wrote:

> In D117814#3260847 <https://reviews.llvm.org/D117814#3260847>, @foad wrote:
>
>>> Compares, v_cndmask_b32, and v_readfirstlane_b32 use EXEC in a way which modifies the result.
>>
>> This doesn't make any sense to me for cndmask. It handles EXEC exactly the same as any other VALU instruction: it writes a result in any lane which is enabled by EXEC, and does nothing for any lane that is disabled.
>
> It writes a scalar register and content of that register is different with different exec. Same thing as compare. See the bug found by Sebastian here: D116053 <https://reviews.llvm.org/D116053>.

No, v_cndmask_b32 does not write a scalar register!


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D117814/new/

https://reviews.llvm.org/D117814



More information about the llvm-commits mailing list