<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/156322>156322</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Feature request: pattern match for rotl / rotr
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
msalat
</td>
</tr>
</table>
<pre>
It would be nice if
```c
#define ROTL(a,b) (((a) << (b)) | ((a) >> (32 - (b))))
```
could be translated to
```c
__builtin_rotateleft(...)
```
emscripten (emcc, →`wasm2wat | grep -i rot`) did not do this automatically using Ubuntu 24.04 x86_64 neither Raspberry Pi OS (Debian bookworm).
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxskk9vnDwQxj_NcBktYsfAwoFD3k2QXqlSqrQ9r2wzLG4N3tpDtvn2FZtUTatKjwTzx8_8bI1OyZ0X5g6q_6C6z_QqU4jdnLTXkpkwvHT_C17D6gc0jIuzjG5EKO421cWr7BaQGnh0C-PT4-cPQI0GOhqgFoGaV-lbpI6gjltyK94yhyP-0fAA6mHLKMLdu8Y3vZv7imF_0UnUS_JaeEAJ-Dfg6WRW58UtpxhEC3seBajJ8_yfrjwnG91FeNkQeLYW6IjwQNDU0BLUxVWnma5abhc4R77gzmEMsllQi4MbcAmCQ0CZXEK9Spi1OKu9f8E1ueWMX8y6yIpU5kWJP5r6VJe4sJOJIz7pdDEc4wt-dPj4aaO4Z-P0giaEb9cQZ6A2z4ZODa1qdcbd_lDVB2rbqs2m7sCHsjBjU1eqorEZqmaw1uimGE1hWqLMdVRQVbTFfk-KVJuzoUoVTTPYwYxUWigLnrXzuffPcx7iOXMprdztq1oRZV4b9um2OEQLX_FWBaJtj2K3HdqZ9ZygLLxLkn7biBPPXc9a1sgY-fvKSUDd4UWLcFxw1mInHEPcntMjUL_9xGyNvptELgnUHVAP1J-dTKvJbZiB-m3A22d3ieErWwHqb1gJqH_jfu7oZwAAAP__rULg6w">