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

    <tr>
        <th>Summary</th>
        <td>
            [HLSL] Attribute vectors have different cast behavior
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            HLSL
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          V-FEXrt
      </td>
    </tr>
</table>

<pre>
    https://godbolt.org/z/j1WPxaGKG

`uint32_t4` can be implicitly casted to `uint64_t4` but `__attribute__((__vector_size__(4 * sizeof(unsigned int)))) unsigned int` raises an error instead.

This causes issues with intrinsics such as `firstbitlow` which use the attribute type


</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxcUk-L2z4Q_TTyZdggj_-sffAhP_bnLXQPhZa2NyPb42gWxQrSKNvdT1-chJQWBoxHb57e0xsTIx9Wok5V_6nqKTNJrA_d94f-_59BstHP750VOUVV7BX2CvuDn0fvZOfDQWH_obB_zX98-WWePz8rvd-q1olXKXCQUtUaJrPCSMDHk-OJxb3DZKLQDOLhhq3LG3ZMsvWGwYgEHpPQMChsFDbDcKZJfBgif1ybJSjcw_brF4VNWi9OZuBVFLb3gr8Oag3BcKQIZgUKwQfgNQqZeXdV_81yhMmkDcIxJorwxmK34cBr5ClCTJMFEzehC4coI4vzbxv1m-XJQooEYgnuHkDeT3Slz-aumNuiNRl1-WPZNE2hqzazXVsUbZk3RBXOZnxscGkWQsqXqtJTvuiMO9RY6VpjXle6anaoFzLl3Oh5aXGpUZWajobdzrnzcYsnu-jv8hLLQmfOjOTiJWfETy9fXxTilnjoNvzDmA5RldpxlPiHQVjcZTcuA9UT7O-ernFEsOZMMPOyUKBVLtnCSNac2YcsBffv-rDYNO4mf1TYb_fcPg-n4F9pEoX99dkV9jfl5w5_BwAA__-4otrF">