diff options
| author | Helena Kotas <hekotas@microsoft.com> | 2025-10-17 12:09:34 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-17 12:09:34 -0700 |
| commit | 024dd569223d00da55412bff8fffffebd1cb799b (patch) | |
| tree | 0cb73f0ec05eed28ad2f629854df8d9f76346850 /llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp | |
| parent | db2a75d082743d139ab93351b3639cbcda96fa84 (diff) | |
| download | llvm-024dd569223d00da55412bff8fffffebd1cb799b.zip llvm-024dd569223d00da55412bff8fffffebd1cb799b.tar.gz llvm-024dd569223d00da55412bff8fffffebd1cb799b.tar.bz2 | |
[HLSL] GetDimensions methods for buffer resources (#161929)
Adds `GetDimensions` methods to all supported buffer resource classes (`{RW}Buffer`, `*StructuredBuffer`, `{RW}ByteAddressBuffer`). The method is implemented by calling one of both built-in functions `__builtin_hlsl_resource_getdimensions_x` and `__builtin_hlsl_resource_getstride` as described in proposal https://github.com/llvm/wg-hlsl/pull/350.
The `__builtin_hlsl_resource_getstride` is implemented directly by Clang codegen by setting the buffer stride to the output variable.
The `__building_hlsl_buffer_getdimensions` built-in function gets translated to LLVM intrinsic `@llvm.dx.resource.getdimensions.x`.
Closes #112984
Diffstat (limited to 'llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions
