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

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
So for arm, GCC does produce the code you want:
```
        vcmpe.f64       d17, d16
        vmrs    APSR_nzcv, FPSCR
        ite     pl
        vmovpl.f64      d18, d17
        vmovmi.f64      d18, d16
        it      mi
        vmovmi.f64      d16, d17
```

RTL CE1 (ifcvt) detects it:
if-conversion succeeded through noce_convert_multiple_sets


So maybe there is some cost issue. Because arm64 does not do it either.

Reply via email to