<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/106253>106253</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[HLSL] bitcasts emitted instead of vector conversions in binary operators
</td>
</tr>
<tr>
<th>Labels</th>
<td>
HLSL
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
llvm-beanz
</td>
</tr>
</table>
<pre>
Clang currently is resolving different cast expressions for binary operator arguments than for function argument expressions. This causes bitcasts to be used instead of correct implicit conversion sequences.
See reproduction case: https://hlsl.godbolt.org/z/jKGcGbE4Y
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxckTFznDwQhn-NaHbMCAGno6C473NwZuLOaVIKaQF5hES00k3Ovz4DcXJxKhWrfd_Z51FEdvaIPWv_Y-1joXJaQuydu64PIyr_VozB3Pr_nfIz6Bwj-uRuYAkiUnBX62cwdppwH4BWlAB_bBGJbPAEU4gwWq_iDcKGUaUQQcU5r-gTQVqUP75M2etkg_8z-zukhK-LJdAqExKMNu0tBCnAiJAJDVhPCZWBMIEOMaJOYNfNWW0T6OCvGPcgIPye0WukkvEL45cXRIi4xWDyr3atCFl9gSWljVh9YWJgYlgcuXIOZgwulSHOTAxvTAyvX5700_ip-VaYvjZd3akC-0qKRspOVrxYelmdpGoNno3uTlqe6q7puJz4uTZNdW51YXvBRcPPQlZSnGte1hWXtammTmKnpFas4bgq68rdx95dWKKMfcVPoq0Lp0Z0dKgT4vPzyzMTYpf421-eiTXcWUp0T0g2uUP3sdA-3onialP6iPOKeld2h0hg_b9GqcjR9R-hzTYteSx1WJkY9u7352GL4RV1YmI4TiEmhvdrrr34GQAA__9Tj95X">