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).