[llvm] [AMDGPU] Eliminate likely-spurious execz checks via intrinsic argument (PR #123749)

Jay Foad via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 21 06:55:17 PST 2025


================
@@ -36,6 +37,24 @@ namespace {
 using StackEntry = std::pair<BasicBlock *, Value *>;
 using StackVector = SmallVector<StackEntry, 16>;
 
+class LikelyVaryingHeuristic {
----------------
jayfoad wrote:

I disagree. `isLikelyVarying` accepts arbitrarily complex expressions involving the workitem ID. There's no way we can know if these will be dynamically divergent. What about `amdgcn.workitem.id.x & 0` or `amdgcn.workitem.id.y >= 1000000` ???

https://github.com/llvm/llvm-project/pull/123749


More information about the llvm-commits mailing list