<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/141089>141089</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [HLSL][SPIRV] Boolean vector in a RawBuffer should be <4 x i32>
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          spall
      </td>
    </tr>
</table>

<pre>
    ```
%18 = tail call noundef align 16 dereferenceable(16) ptr addrspace(11) @llvm.spv.resource.getpointer.p11.tspirv.VulkanBuffer_a0v4i1_12_1t(target("spirv.VulkanBuffer", [0 x <4 x i1>], 12, 1) %1, i32 1)
```
I believe the type in the target should be 
```
[0 x <4 x i32>]
```
This leads to an assert failing in 'SPIRVLegalizePointerCast::loadVectorFromVector' because the Target Element type and the Source Element type are not the same, <4 x i32> versus <4 x i1>.

Looks to be the saame as: #135635

</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxkU8GOnDgQ_RpzKQXhMgb6wKF7Oq2NNIcoE811VEA17Y0bI9uQZL9-hWlpJ7MSEkU9F1Xv1TOFYMaJuRX6JPQ5oyXenG_DTNZmnRt-t6IqHk9xFKhlA0KdIZKx0JO1MLllGvgKZM04gaxgYM9X9jz1TJ1lgY2sBB5gjh5oGHyYqU9ZuWVFWVi73vMwr7nn4Bbfcz5ynJ2ZIvt8ljKPYTZ-zV8X-4Om03K9sn-jYi2NfJP4JqPAJpIfeQsE4v9PC0SBTyD0qYBfINRTCb_ASKE-C33eEJnwfSDUcvswClNio_1Ogi_QsTW8MsQbQ_w9M5hpj9MIEG5usQN0DB8qP3RX-Gj_56nvNxPAMg0BogOagEJgH-FKxppp3JoJrF--fvn2-swjWfMPf92leqIQhToKdbSOhlfuo_MX7-57JLCGjntawj75933az5bvPMWdCE1Dwl7SFj5gnmFyMeGB7pz0fE8FVvZhCX-om2_kiuOzcz8SnY4f9XRnoCDUEQQqqXSltCiO2dCq4aAOlHEr67I-YCMPmN3aakCNVNelbuq-L4ahqgpmVWDT9FgSZabFAnWhEaVWlZL5QNeykb3kuuS-xkKUBd_J2DyZzfkxMyEs3MpSFs0hs9SxDekSIE78ExK62UafM99uRZ-6ZQybW02I4b_fRBNtuj1_Pb88b-vUp7Qcoc9wcs4yTbCmDWyrI_hGP3dPvjfKex2zxdv2FuO8ySPwIvAymnhburx3d4GXrfPj9Wn27m_uo8BLmjcIvDwIrS3-GwAA___9kC4g">