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

    <tr>
        <th>Summary</th>
        <td>
            [SPIRV][HLSL] Implement `dot` lowering 
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            HLSL,
            backend:SPIR-V
      </td>
    </tr>

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

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

<pre>
    Add an intrinsic like this one from https://github.com/llvm/llvm-project/blob/1e6ce5e284f5c0e8d64eee21af727bb164eb3caf/llvm/include/llvm/IR/IntrinsicsDirectX.td#L28

to 
https://github.com/llvm/llvm-project/blob/1e6ce5e284f5c0e8d64eee21af727bb164eb3caf/llvm/include/llvm/IR/IntrinsicsSPIRV.td#L59

We won't need dot2,dot3,dot4 for spirv which adds a bit of a complication on our switching, Come with an intrinsic switching behavior that allows for per backend specializations. maybe as a  per backend lambda?

update the dot.hlsl unit tests:
https://github.com/llvm/llvm-project/blob/1e6ce5e284f5c0e8d64eee21af727bb164eb3caf/clang/test/CodeGenHLSL/builtins/dot.hlsl#L1

and implement the `OpDot` Lowering:
https://registry.khronos.org/SPIR-V/specs/unified1/SPIRV.html#OpDot

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzMVE9r5DYU_zTy5bFGlv8ffMhmcBsItOxC2qtkPY9fI0tGkjNkP32RJ7NJoJdeSsFIxhbv9xfJEOhsEQdWf2X1KZN7XJwfZul_OGsy5fTrcKc1SAtkoycbaAJDzwhxoQDOIszerbDEuAVW3jExMjGeKS67yie3MjEa83Lbvmze_YVTZGJUxikmxgKbCWsUXTXXE8dONxUiikLOrWiVKpoKVTnJ-X0O2cnsGt8_PHxLy41cOJHHKf6ZR81E-Sg6xk-M313X6OD68v-h-_33h29Pb2Tr_iPZPxAuzjLRRrCIGrSLgol77WJ53SqYnYewkX-By0LTAlLrABIURXAzSJjcuhmaZCRnIT27h3ChOC1kz0zcw71bES4Ul88B_zwDChf5Qs5DXGQEaYy7hAN2Qw9KTs9oNYQNJ5KGfhxAIYdVvioEmbh8OmjkqrRk5fhR575pGVOfMEnMFxMM7JYiRAzxCOm_imwyMtkyJmAmxnun8Re0vz5-f0zjdjKRbGBivNFMmRUfpUirgdbN4Io2HopYw3_bTi6yhsOju6BPxv-zJI9nCtG_5s-Ld9aF3PlEJhXkyxMTY3I5oe-WZkJdvP17ype4JipXnGNwpodS92UvMxyKthBNUda8ypah51zUmnPN26KfldSqa_u6bMupVEr0c0aD4KLiFe9EUXeiytuunfuyFZXQoqv6hlUcV0kmT24nihmFsOPQdbxuMiMVmnBcJkJcjUudZUK8VYCVdzdBIt03fjhSU_s5sIobCjG8T44UzXEzHTpZfWL112NofYKHnzazhuurwebNYMh2b4Z_XZhDSHL40PJ3AAAA__-lcaAT">