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

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #1)
> To me it looks like LLVM does 4 scalar conversions?  Is that profitable?

Oh yes it unrolls 4x and just does the store as a vector store. I am not sure
that is better after either.

Note sve is vectorized though:
```
.L2:
        ld1d    z31.d, p7/z, [x1, x2, lsl 3]
        scvtf   z31.s, p6/m, z31.d
        st1w    z31.d, p7, [x0, x2, lsl 2]
        incd    x2
        whilelo p7.d, w2, w3
        b.any   .L2
```

Reply via email to