<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/86719>86719</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
remove signed `reversebits` apis
</td>
</tr>
<tr>
<th>Labels</th>
<td>
HLSL
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
farzonl
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
farzonl
</td>
</tr>
</table>
<pre>
reversebits docs only support unsigned inputs and outputs: https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/reversebits
The following needs to be removed:
1. https://github.com/llvm/llvm-project/blob/main/clang/lib/Headers/hlsl/hlsl_intrinsics.h#L1150C1-L1161C32
2. https://github.com/llvm/llvm-project/blob/main/clang/lib/Headers/hlsl/hlsl_intrinsics.h#L1177C1-L1184C24
3. https://github.com/llvm/llvm-project/blob/main/clang/lib/Headers/hlsl/hlsl_intrinsics.h#L1195C1-L1202C32
Finally Add sema checks on the `__builtin_elementwise_bitreverse` builtin
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzEk7GO2zAMhp9GXoQzJEq248HD9Q7GDdnaPZAtJmYrS4EkX5A-feHYbQ_dOt1CEgRBfCD_36REF4_YseoLAzib-DN4xwBY9VqYJU8hdnuzGIK9dxHfMSYcKCduw5h48O7O03K9hpg5X_xjn-Xkr0tO3HjLw5LXmqlnPuV8XQsGPYPeoYm-nGmMIYVzLscwM-jRPy2JQX8jb8NtrxQw6C1FHLOyk0uOQf8BhYlXJp63-G1Cfg7OhRv5C_eINvEc-IA84hze0a4g26gs_yG6UJ6WYQdx7v13errG8B3HzKAfXBgY9LMhz6AfnfGXdYjW5hsai3FF3hHXdCKfI_lEYyonBuooZSVe5NNRylq-KNhQ4JNQmmZDOegX0BuK-iSUtnqggIA_V9liT944d-fP1vKEs-HjhOOPVXo8T8hZLU6nYSGXyZ_Q4Yw-3yjhaaC8a4TVgu8The2UbVVrCuxkI6U-SNWoYupMq3ULWldWN0KOagC0RjZtPTa1GgQW1IEALRTUsoVWqRIrq217bqrx0BihW6YFzoZcuR6nDPFSUEoLdoe6kW3hzIAu7UZ7O3497i6L3eOWw3JJTAtHKae_CzJlh90mXL5bi9Xio_Rrwc2VUrFE1_333x6A62sejL8CAAD__3XwT7M">