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

    <tr>
        <th>Summary</th>
        <td>
            [HLSL] Implement constant expression evaluator for HLSL splat cast
        </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>
    See PR for Implementation of this cast #118992

Add support to handle the new cast in the constant expression evaluator (clang/lib/AST/ExprConstant.cpp)
Support to handle this cast should be added to:
- VectorExprEvaluator::VisitCastExpr (This cast only handles splatting from a vec1, there is an existing cast that splats from a scalar)
- RecordExprEvaluator::VisitCastExpr
- ArrayExprEvaluator::VisitCastExpr (There is currently no such function but I believe it should be added).
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyMkkFvozAQhX-NuYwSgYEEDhzYtmgr9bBqqt6NGYJXjo08Q7b59yuTZHvYlbonhMbvzZuZTxGZo0NsRPlNlI-JWnjyoaFZWZv0frg0B0T48QqjD_B8mi2e0LFi4x34EXgyBFoRg5B5llV1LUXairRthwFomWcfGNjDpNxgEXhCcPjrqjBu_dfeESvHgB9zQKLojGdlF8U-gJCVtsodheys6YXs2sObkN3TxxwebsKtnmcha5G2h380vOejyS92gB5BDQMOwF7kMegG3lGzD9Hx6d42lvL23ZDhB0UcazHJ2x837-zl1oOAZquYjTvCGPwJFJxRZ0I-xPECgiFQDvDD0Ppm1fOk-Kqju4i0sipcB9nAK2ofhq9CrU_bENTl_-Lf4uglBHRsL-A80KInGBen15v2C8Mz9GgNnhHMX3sTst4mQ5MPdV6rBJtsn1f7tCj3aTI1Eosq32mZy7Iuxn2VVzvd93qss74ey12WmEamskxlWshM1nm6zcqi1thX_V7lo9rlokjxpIzdWns-bX04JoZowSaT5X63S6zq0dLKqpQRpLUqpIzohiaKNv1yJFGk1hDTpw0btivk318OL6J8_GT5CwAj91FzvdZ6vWQJtpmYZ4qLlp2Q3dHwtPRb7U8RVHu-fzZz8D9Rs5DdGpWE7G6znBv5OwAA__9qnyyq">