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

    <tr>
        <th>Summary</th>
        <td>
            [SPIRV][DirectX][HLSL] Move `cross` implementation to hlsl_intrinsics.h
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            backend:DirectX,
            HLSL
      </td>
    </tr>

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

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

<pre>
    1. Remove `Intrinsic::dx_cross`
2. Remove `BI__builtin_hlsl_cross`
3. Remove `BI__builtin_hlsl_cross` Sema checks from `clang/lib/Sema/SemaHLSL.cpp`
4. Remove `getCrossIntrinsic` from `clang/lib/CodeGen/CGHLSLRuntime.h`
5. Remove emitting intrinsic from `clang/lib/CodeGen/CGBuiltin.cpp`
6. Remove `expandCrossIntrinsic` in `llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp`
7.  Implement cross algorithmicly in `hlsl_intrinsics.h`
8.  add a pattern match for cross as an InstCombine in `llvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cpp` to be able to still emit the cross GL extension.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyMk09vnDAQxT-NuVhFYAxkDxz2TzddaStFSVXltrJhFtwYG9lDlOTTV2bZP1LUKieMGH7z3jyP8F61BqAi-Yrkm0iM2FlXHYX7sEZH0jbvVRrTR-jtK1BSJDuDThmvapItSbZs3g61s96TIiHJkt1WrnaHgxyVRmUOnfb6tjD7UiF9gl7QuoP6xdOjs32orrUwLWFbrSRh21AxP37sn_ZxPQynDvy2Qwu4Dsyr-CL5B3BtG7gHE073gfg4GlQ9xN0Jm1-w0CtEZVqqztAvEFcnm1eZxa1MeBuEaT4rVSZ81fq1v0B_CdcCErbdKAc1PofT825_-e17QHllb1qVMaW7ftDQg0E6zZgK3VqnsOtVrd_nPlMEF1P-7PwuplQ0DRV0EIjgDO0F1h09WneGeSoM3RmPa9tLZeC_wp8edo-_z88HB3tohVYf4Oaf3aycoqUSqJAawtGj0noaPsUO5s73ewpvCCfDUVNlzSJbiAiqtOScJ0m6KKKuWiQ5K0rGj1JmZQKZLEspBb_jaSHL8phHqmIJyxOepukiK7IiloIznpe1EHDHRcMIT6AXSsfBUmxdGynvR6jSLOcsj7SQoP20SoxJUb-AaUi2vETECFsTxsK1Ci_5JnJVIH2TY-sJT7Ty6K9sVKinxTyNKt-QfHVmTS8TKN_Qn_P9ueyNOscsUFkTxvYp1Gh0uuoQBx8WmW0J27YKu1HGtZ3SmkML8gZn_0AdQpvsesK2s-PXiv0NAAD__3JAYjI">