https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79390
Uroš Bizjak <ubizjak at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #5 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to Richard Biener from comment #4)
> On trunk I see with -fno-split-paths:
>
> .L5:
> movq (%r14,%rdx,8), %rcx
> vmovsd (%rcx,%rbx), %xmm0
> vandpd %xmm3, %xmm0, %xmm0
> vucomisd %xmm1, %xmm0
> jbe .L4
> vmovapd %xmm0, %xmm1
> movl %edx, %r9d
> .L4:
> addq $1, %rdx
> cmpq %rdi, %rdx
> jne .L5
This looks similar to PR79389, where two problems were exposed. In addition to
split-paths issue, perhaps something disturbed RTL if-conversion to generate
jump instead of cmova?
.L4:
movq (%r15,%rax,8), %rcx
vmovsd (%rcx,%rbx), %xmm0
vandpd %xmm3, %xmm0, %xmm0
vucomisd %xmm1, %xmm0
vmaxsd %xmm1, %xmm0, %xmm1
cmova %eax, %edx
addq $1, %rax
cmpl %eax, %r14d
jg .L4