[llvm-bugs] [Bug 38243] New: [X86][SSE] Add modulo rotate support to LowerRotate
via llvm-bugs
llvm-bugs at lists.llvm.org
Fri Jul 20 02:22:15 PDT 2018
https://bugs.llvm.org/show_bug.cgi?id=38243
Bug ID: 38243
Summary: [X86][SSE] Add modulo rotate support to LowerRotate
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, lebedev.ri at gmail.com,
llvm-bugs at lists.llvm.org, spatel+llvm at rotateright.com
Blocks: 38152
With the introduction of the funnelshift intrinsics, the intention is to
support lowering to rotation ISD ops. For this to work, LowerRotate must
correctly handle the fact that the rotation amount will need to be treated as a
modulo amount.
The AVX512 and XOP rotation instructions already exhibit modulo behaviour, and
the v16i8/v32i8 non-AVX512BWI case should be modulo safe as well.
But the remaining vXi16/vXi32 cases need to fixed.
An initial attempt at adding a mask to the rotation amount caused issues with
IsSplatValue() which needs remedying as well.
I haven't checked other targets or the rotation legalization code to see if
that needs adjustment.
Referenced Bugs:
https://bugs.llvm.org/show_bug.cgi?id=38152
[Bug 38152] add intrinsics and backend support for rotate ops
--
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/20180720/0f981472/attachment.html>
More information about the llvm-bugs
mailing list