llvm-project
87e1da3f - [HLSL] Mark `GroupMemoryBarrierWithGroupSync` as `convergent` (#160175)

Commit
223 days ago
[HLSL] Mark `GroupMemoryBarrierWithGroupSync` as `convergent` (#160175) `GroupMemoryBarrierWithGroupSync` is required to be marked as convergent so that it can't generate duplicate calls or be moved to identical control flow. Without it, we generate undefined behaviour during optimization. For instance: https://godbolt.org/z/9j3vsq1h3. Testing that the convergent attribute is added is sufficient. There already exists testing, [here](https://github.com/inbelic/llvm-project/blob/main/llvm/test/Transforms/SimplifyCFG/attr-convergent.ll), that it will not be moved as described in the above link.
Author
Parents
Loading