[llvm-bugs] [Bug 34694] Improve lshr on <16 x i8> with variable shift amounts on X86

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Aug 28 03:43:11 PDT 2018


https://bugs.llvm.org/show_bug.cgi?id=34694

Simon Pilgrim <llvm-dev at redking.me.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED
 Fixed By Commit(s)|                            |340810, 340813

--- Comment #6 from Simon Pilgrim <llvm-dev at redking.me.uk> ---
Fixed in trunk rL340810 (preliminary), rL340813.

shift_vector_uniform:
  movzbl  %dil, %eax
  movd    %eax, %xmm1
  psrlw   %xmm1, %xmm0
  pcmpeqd %xmm2, %xmm2
  psrlw   %xmm1, %xmm2
  psrlw   $8, %xmm2
  punpcklbw       %xmm2, %xmm2    # xmm2 =
xmm2[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
  pshuflw $224, %xmm2, %xmm1      # xmm1 = xmm2[0,0,2,3,4,5,6,7]
  pshufd  $0, %xmm1, %xmm1        # xmm1 = xmm1[0,0,0,0]
  pand    %xmm1, %xmm0
  retq

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20180828/2fba699b/attachment.html>


More information about the llvm-bugs mailing list