[llvm-bugs] [Bug 27982] New: [x86, SSE] no optimization for move mask instructions
via llvm-bugs
llvm-bugs at lists.llvm.org
Thu Jun 2 09:28:00 PDT 2016
https://llvm.org/bugs/show_bug.cgi?id=27982
Bug ID: 27982
Summary: [x86, SSE] no optimization for move mask instructions
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Backend: X86
Assignee: unassignedbugs at nondot.org
Reporter: spatel+llvm at rotateright.com
CC: llvm-bugs at lists.llvm.org
Classification: Unclassified
Similar to bug 27924, I noticed this problem in a checker program that I used
for http://reviews.llvm.org/D20774 :
$ cat movmsk.ll
declare i32 @llvm.x86.sse2.pmovmskb.128(<16 x i8>)
define i1 @movmsk() {
%movmsk = tail call i32 @llvm.x86.sse2.pmovmskb.128(<16 x i8>
zeroinitializer)
%cmp = icmp eq i32 %movmsk, 65535
ret i1 %cmp
}
$ ./llc -o - movmsk.ll
...
pxor %xmm0, %xmm0
pmovmskb %xmm0, %eax
cmpl $65535, %eax ## imm = 0xFFFF
sete %al
retq
There doesn't seem to be any analysis for an X86ISD::MOVMSK node in the DAG.
--
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/20160602/1a538ad8/attachment.html>
More information about the llvm-bugs
mailing list