[llvm-bugs] [Bug 38522] Inefficient code generation for v16i8 vertical less-equal
via llvm-bugs
llvm-bugs at lists.llvm.org
Wed Apr 1 04:39:16 PDT 2020
https://bugs.llvm.org/show_bug.cgi?id=38522
David Bolvansky <david.bolvansky at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
See Also| |https://bugs.llvm.org/show_
| |bug.cgi?id=42035
CC| |david.bolvansky at gmail.com
Simon Pilgrim <llvm-dev at redking.me.uk> changed:
What |Removed |Added
----------------------------------------------------------------------------
Fixed By Commit(s)| |rG918ccb64b022
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #1 from Simon Pilgrim <llvm-dev at redking.me.uk> ---
Candidate Patch: https://reviews.llvm.org/D76984
--- Comment #2 from Simon Pilgrim <llvm-dev at redking.me.uk> ---
(In reply to Simon Pilgrim from comment #1)
> Candidate Patch: https://reviews.llvm.org/D76984
Fixed in rG918ccb64b022
define zeroext i1 @PR38522(<16 x i8>* %x, <16 x i8>* %y) {
; CHECK-LABEL: PR38522:
; CHECK: # %bb.0: # %start
; CHECK-NEXT: vmovdqa (%rdi), %xmm0
; CHECK-NEXT: vpcmpgtb (%rsi), %xmm0, %xmm0
; CHECK-NEXT: vptest %xmm0, %xmm0
; CHECK-NEXT: sete %al
; CHECK-NEXT: retq
start:
%0 = load <16 x i8>, <16 x i8>* %x, align 16
%1 = load <16 x i8>, <16 x i8>* %y, align 16
%2 = icmp sle <16 x i8> %0, %1
%3 = sext <16 x i1> %2 to <16 x i8>
%4 = bitcast <16 x i8> %3 to <2 x i64>
%5 = tail call i32 @llvm.x86.sse41.ptestc(<2 x i64> %4, <2 x i64> <i64 -1,
i64 -1>)
%6 = icmp eq i32 %5, 1
ret i1 %6
}
declare i32 @llvm.x86.sse41.ptestz(<2 x i64>, <2 x i64>) nounwind readnone
--
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/20200401/68f378d6/attachment.html>
More information about the llvm-bugs
mailing list