diff options
author | Justin Bogner <mail@justinbogner.com> | 2024-08-23 12:06:53 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-23 12:06:53 -0700 |
commit | 782bc4f669d3c2b52d1c9db121dea6a545216149 (patch) | |
tree | 7067f2e559aa9ba4501c3bacdcd5f2636f80a1c7 /llvm/lib/Bitcode/Writer/BitcodeWriter.cpp | |
parent | 00620abc7f6bdd824e033744f84408c98decd95c (diff) | |
download | llvm-782bc4f669d3c2b52d1c9db121dea6a545216149.zip llvm-782bc4f669d3c2b52d1c9db121dea6a545216149.tar.gz llvm-782bc4f669d3c2b52d1c9db121dea6a545216149.tar.bz2 |
[DXIL][Analysis] Uniquify duplicate resources in DXILResourceAnalysis
If a resources is used multiple times, we should only have one resource record
for it. This comes up most prominantly with arrays of resources like so:
```hlsl
RWBuffer<float4> BufferArray[10] : register(u0, space4);
RWBuffer<float4> B1 = BufferArray[0];
RWBuffer<float4> B2 = BufferArray[SomeIndex];
RWBuffer<float4> B3 = BufferArray[3];
```
In this case, there's only one resource, but we'll generate 3 different
`dx.handle.fromBinding` calls to access different slices.
Note that this adds some API that won't be used until #104447 later in the
stack. Trying to avoid that results in unnecessary churn.
Fixes #105143
Pull Request: https://github.com/llvm/llvm-project/pull/105602
Diffstat (limited to 'llvm/lib/Bitcode/Writer/BitcodeWriter.cpp')
0 files changed, 0 insertions, 0 deletions