<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/112777>112777</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[HLSL] Add `AppendStructuredBuffer` and `ConsumeStructuredBuffer` definitions to HLSLExternalSemaSource
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
hekota
</td>
</tr>
</table>
<pre>
Add `AppendStructuredBuffer` and `ConsumeStructuredBuffer` definitions to HLSLExternalSemaSource.
`AppendStructuredBuffer` is a streaming output buffer:
https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/sm5-object-appendstructuredbuffer
`ConsumeStructuredBuffer` is a streaming input buffer:
https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/sm5-object-consumestructuredbuffer
The resource definitions will contain a handle that will be lowered to a `dx.RawBuffer` target extension type with the UDT as its type argument.
Refer to [Proposal for mapping resource attributes](https://github.com/llvm/wg-hlsl/pull/76) for the attribute mapping.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy8k09vnDwQxj-NuViLjPm3e-CQvPuiHnKosukHMHgAt8ZG9jgk374yS5NuVaWn9oJBY2Z-88w8wns1GoCGlPekPCci4GRdM8E3iyLprHxt7qSkpGJ3ywJGXtCFHoMDeR-GARypGBVmu_CfNT7M8LsbEgZlFCprPEVLPz1cHv5_QXBG6AvM4mKD6yGlhJ0Ju9ufH1VUngrq0YGYlRmpDbgEpN01nu8ZJsTFxy_eEt5qEM6ks-qd9XbAtLcz4S2YQ_CEt6sy0q77W84Jb6Vy0GMuJ-014a2fy4PtvkKPB7Fh-Tesvewt-wdi_AKvzA07_bvw_ZXrI_qnCagDv83kZnKr0pr21qBQhgo6CSM1UJwEXkMdUG1XcCDjkEXcCfmSPor1vXcUbgSk8IJgvLKG4usCdFU4UZyAfjk_UeGpQn8NCDeGGQymP_M9wgAuViDl_WdnF-uFpoN1dBbLEhV9gxeITnUBwZPyTPjxVtRR4RS6XUutn-OxjoddsyXoeNQV4acte-R7S_ijVprIJpen_CQSaLKan7LTqWJVMjXHnHd9X0KW82NxqouiKHPGBs6OTA6sGxLVcMaLjGU1z7KcVylUdTEI1vOy6mVeCVIwmIXSaWRLrRsT5X2AJst4XdeJFh1ov_mWcwMr3aKE82hj18SfDl0YPSmYVh79expUqDfDRx-S8kz_lcOT4HTz5yFs6IuzcWEJb7e-4nbvjT83_HsAAAD__0RblOQ">