numba / llvmlite

A lightweight LLVM python binding for writing JIT compilers
https://llvmlite.pydata.org/
BSD 2-Clause "Simplified" License
1.94k stars 322 forks source link

Add convergent as a supported FunctionAttribute and CallInstrAttribute. #1019

Closed diptorupd closed 11 months ago

diptorupd commented 12 months ago

The PR adds a new attribute string to the set of known FunctionAttributes and CallInstrAttributes.

The convergent attribute is needed for certain function declarations and call instructions to generate correct SPMD code for OpenCL. Refer: https://llvm.org/docs/ConvergentOperations.html

Supersedes #1016

PS: #1016 was opened from the main branch of my fork. I have moved the changes to a feature branch whose name better indicates the intent of these changes. I will close the PR #1016.