llvm-project
df344285 - [IR] Relax convergence requirements on call (#135794)

Commit
153 days ago
[IR] Relax convergence requirements on call (#135794) Before this commit, having a convergence token on a non-convergent call was considered to be an error. This commit relaxes this requirement and allows convergence tokens to be present on non-convergent calls. When such token is present, they have no effect as the underlying call is non-convergent. This allows passes like DCE to strip `convergent` attribute from functions for which all convergent operations have been stripped. When this happens, a convergence token can still exist in the call-site, causing the verifier to complain. Alternatives have been considered in #134863 and #134844.
Author
Parents
Loading