https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87105

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #15 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed.  There's the redundant store left, the IPA SRA issue, but everything is
vectorized now:

_Z16quadBoundingBoxAPK5PointR3Box:
.LFB1125:
        .cfi_startproc
        vmovupd (%rdi), %xmm1
        vmovupd (%rdi), %xmm7
        vminpd  32(%rdi), %xmm1, %xmm4
        vmaxpd  32(%rdi), %xmm7, %xmm7
        vmovups %xmm4, (%rsi)
        vmovups %xmm7, 16(%rsi)
        vmovupd 16(%rdi), %xmm2
        vmovupd (%rdi), %xmm6
        vmovupd 32(%rdi), %xmm1
        vaddpd  %xmm2, %xmm2, %xmm5
        vsubpd  %xmm2, %xmm6, %xmm3
        vaddpd  %xmm6, %xmm1, %xmm0
        vsubpd  %xmm5, %xmm0, %xmm0
        vmovapd .LC0(%rip), %xmm5
        vdivpd  %xmm0, %xmm3, %xmm3
        vxorpd  %xmm0, %xmm0, %xmm0
        vmaxpd  %xmm0, %xmm3, %xmm3
        vminpd  %xmm5, %xmm3, %xmm3
        vsubpd  %xmm3, %xmm5, %xmm5
        vmulpd  %xmm3, %xmm1, %xmm0
        vmulpd  %xmm5, %xmm6, %xmm6
        vmulpd  %xmm5, %xmm2, %xmm1
        vmulpd  %xmm3, %xmm2, %xmm2
        vaddpd  %xmm1, %xmm0, %xmm0
        vaddpd  %xmm6, %xmm2, %xmm2
        vmulpd  %xmm3, %xmm0, %xmm0
        vmulpd  %xmm5, %xmm2, %xmm2
        vaddpd  %xmm2, %xmm0, %xmm0
        vminpd  %xmm0, %xmm4, %xmm4
        vmaxpd  %xmm0, %xmm7, %xmm0
        vmovups %xmm4, (%rsi)
        vmovups %xmm0, 16(%rsi)
        ret

Reply via email to