<div dir="ltr">OK, then I have a better idea: let's do it in instcombine.<div><br></div><div>Instcombine already does stuff like this for byteswaps -  it should be possible to make it cover this case too. Instcombine is also a better place to cover the bittwiddling hacks Joerg mentioned. I only discounted it originally because I felt this was too ARM specific to plumb right the way through the midend.</div><div><br></div><div>Does this sound alright?</div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, 2 Nov 2015 at 20:22 Matt Arsenault via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">arsenm added a comment.<br>
<br>
In <a href="http://reviews.llvm.org/D14234#279410" rel="noreferrer" target="_blank">http://reviews.llvm.org/D14234#279410</a>, @jmolloy wrote:<br>
<br>
> Hi Matt,<br>
><br>
> Sure. That's certainly a possibility. Does your target have a similar instruction?<br>
><br>
> James<br>
<br>
<br>
Yes, AMDGPU has a bitreverse instruction<br>
<br>
<br>
Repository:<br>
  rL LLVM<br>
<br>
<a href="http://reviews.llvm.org/D14234" rel="noreferrer" target="_blank">http://reviews.llvm.org/D14234</a><br>
<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
</blockquote></div>