<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/128231>128231</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[HLSL] `max` and `min` overloads with mixed scalar and vector arguments
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
llvm-beanz
</td>
</tr>
</table>
<pre>
Presently Clang fails to resolve `max` and `min` function calls when the arguments are mixes of scalar and vector type. This prevents common code patterns such as:
```hlsl
export int4 call(int4 I, int Min) {
return min(I, Min); // calls min(int4, int4)
}
```
These patterns are particularly useful with literal values.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJx0kt-K2zwQxZ9Gvhk2yON_8YUvsruE74MtFLovoMiTWEWWjEbyJn36YiVt96IFgT320eEc5qeYzcURDaJ5Fs1roVKcfBisXeenEyn3ozj58TZ8DcTkor3Bi1XuAmdlLEP0EIi9XQlEK2d1Fa0E5cY8GbdN5-R0NN6BVtYyfEzkIE4EKlzSTC4yqEAwmysx-DOwVlaF7LGSjj5AvC20g_fJMCyB1nxF-3neLP1IsKgYKTgGTnoCxaI6CJlPK-9nsmyFPNB18SGCcbHOYQTu8_v_Al-2r_DFOIE9iO5ZyAMAQKCYgoOtCe6z7C4R1TMIPAo8PlrdFZvbw6veVPIgutfPQe653ifiT7G3-osK0ehkVbA3SEznZOHDxAmsiRSUhVXZRLwrxqEa-6pXBQ1lV8uyK9sWi2mozrrFaq86Oo19o-qyb_qqasumq_pGN3VhBpTYSMQSS1lK3GmqGmp1dxrr9qxRi1rSrIzdbZvf-XApDHOiocQ9VmVh1YksZ0gQHX1A_isQN2Z-4ZIuLGppDUf-YxNNtJmu_96-vYnm9Z-k-JWC9Wrke_UNifEvPPwGp0jBDlOMS155XsfFxCmddtrPAo9bgsfjaQn-O-ko8Jhzs8Djo9g64M8AAAD__wqB9og">