[HLSL] Add lowering of `HLSLGloballyCoherentAttr`
- Dominant language
- LLVM
- Stars
- 40.5k
- Forks
- 18.7k
- PR merge metrics
- PR metrics pending
Description
As described in https://github.com/llvm/wg-hlsl/blob/main/proposals/0049-resource-instance-property-annotations.md.
AC:
- Generate `llvm.[spv|dx].resource.annotatecoherence` intrinsics during codegen of resource accesses
- DX: Updating the `DXILResource` analysis pass to mark the properties with the corresponding coherence types
- DX: Update `dxil-op-lowering` to emit the right resource handle type in the dxil op and set appropriate metadata
- SPV: When in non-Vulkan memory model, convert the intrinsics to variable decorations of the resource
- SPV: When using Vulkan memory model, add an analysis pass that will mark each pointer of resource access with the appropriate decorations
- Add lit testing of each individual stage
Contributor guide
Assessment
This issue has not been assessed yet.