https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113880
Bug ID: 113880 Summary: V2SF->V2DF conversion pattern seems to be missing Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords: missed-optimization Severity: enhancement Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: pinskia at gcc dot gnu.org Target Milestone: --- Target: aarch64-*-* Take: ``` void f(float *a, double *b) { b[0] = a[0]; b[1] = a[1]; } ``` This should be optimized to: ``` ldr d31, [x0] fcvt v31.2d, v31.2s stp q31, [x1] ret ``` But V2SF->V2DF conversion does not exist. This is in a similar way V4HF->V4SF is missing (PR 113869).