[llvm-bugs] [Bug 40203] New: [X86][SSE] Remove shift-by-immediate llvm x86 intrinsics

via llvm-bugs llvm-bugs at lists.llvm.org
Wed Jan 2 06:42:23 PST 2019


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

            Bug ID: 40203
           Summary: [X86][SSE] Remove shift-by-immediate llvm x86
                    intrinsics
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Backend: X86
          Assignee: unassignedbugs at nondot.org
          Reporter: llvm-dev at redking.me.uk
                CC: craig.topper at gmail.com, llvm-bugs at lists.llvm.org,
                    llvm-dev at redking.me.uk, spatel+llvm at rotateright.com

The SSE SLLI/SRLI/SRAI vector uniform shift by immediate intrinsics still exist
due to a gcc compatibility issue requiring us to support non-immediate values
in the '_mm_slli_epi32' style C/C++ intrinsics.

What would be better is if CGBuiltin could promote the non-immediate cases to
use the uniform variable equivalent intrinsics (__builtin_ia32_pslldi128 ->
__builtin_ia32_pslld128 etc.) and the 'normal' cases replaced with generic
shifts (or zero for out of range logical shifts).

This would allow us to remove all the existing slli intrinsics and their
handling.

-- 
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/20190102/45833a1f/attachment.html>


More information about the llvm-bugs mailing list