<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/112775>112775</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[HLSL] Add `RWStructuredBuffer` definition 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 `RWStructuredBuffer` definition to HLSLExternalSemaSource.
The `RWStructuredBuffer` is a read-write buffer of user defined types (UDTs).
https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/sm5-object-rwstructuredbuffer
The resource definition 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/eJykk0FvnD4QxT-NuYwWweyysAcOifaP_occqmying0ewK2xkT0OybevYLdJU6nqoReMNPKb9356liHowRLVorgXxTmRkUfn65G-O5ZJ69RbfacUiGP2-PXCPnYcPan72PfkxTEDRb22mrWzwA7-f7g8_PfK5K00F5rkxUXfUSqys8jurt-nkf6spgNI8CTVbvGaCdptAq6HGMhfl5ECfpspgMDq-fwUBJ5uC0bmOYj9ncBGYGNIeptOuvMuuJ7Tzk0CG7K7GAQ2i7bKLbe_PQpslPbU8V6NJhiBTZiKnWu_Ucc7v4R3r1dHvwfyFLakv-JYtDHQOctSW5AwSqsMAY-Sr6OWwLiF_JrHgVyhqNf0US4fOFj6gRjolcmGDfHbTLBoHoFHgufzE8gAmsN1IP0QJ7L8ifcjrQTZgSjuv3g3uyAN9M7DJOdZ2-HDu2T2uo1MQRRngdVnnIPmMbY3isa8rMcy7G605mjWozwKPG3qq793wZ-70kTVe3Xan2RCdV7iKT9VFZbJWOcy72QnsTxmbZ-ro-pzOu4L1WO_rwirRNeY4SHP8hLzLMMyPXTYHsu2LbO8LaqsF4eMJqlNunpLnR8SHUKkOs-xLIvEyJZM2FqOaGmBbSoQ19L7er20a-MQxCEzOnD4kGHNZnsea7lFcYZ_fg9J9Kb-O93N0-zd2kGBzWZ4Lewt0UuNPwIAAP__Aj09rQ">