llvm-project
2a09db4d - AMDGPU: Back-propagate wqm for sources of side-effect instruction (#193395)

Commit
5 days ago
AMDGPU: Back-propagate wqm for sources of side-effect instruction (#193395) For readfirstlane instruction, as it would get undefined value if exec is zero. To handle the case that only helper lanes execute the parent block, we let the readfirstlane to execute under wqm. But this is not enough. If the parent block was also executed by non-helper lanes, we also need to make sure its sources were calculated under wqm. Otherwise, if the instruction that generate the source of readfirstlane was executed under exact mode, the value would contain garbage data in help lane. The garbage data in helper lane maybe returned by the readfirstlane running under wqm. To fix this issue, we need to enforce the back-propagation of wqm for instructions like readfirstlane. This was only done if the instruction was possibly in the middle of wqm region (by checking OutNeeds).
Author
Parents
Loading