[Mlir-commits] [mlir] [mlir][spirv] Add convergent attribute to builtin (PR #122131)

Jakub Kuderski llvmlistbot at llvm.org
Wed Jan 8 10:13:18 PST 2025


kuhar wrote:

> My understanding is that the non-uniform SPIR-V functions fulfill the definition of a convergent operation and should therefore be marked as such

This I agree with.

> the new version of lookupOrCreateSPIRVFn now does.

This I don't follow. Looking at the previous implementation of this code, I'd think that this was already being handled by
```c++
    LLVM::LLVMFuncOp func = lookupOrCreateSPIRVFn(
        symbolTable, funcName, paramTypes, retTy, !NonUniform);
```

I'm not very familiar with this code, and it seems odd to me that a very generic-sounding function like `lookupOrCreateSPIRVFn` would set this attribute unconditionally for any builtin (not just non-uniform).

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


More information about the Mlir-commits mailing list