https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100000
Bug ID: 100000 Summary: arm: Missed optimisation storing V4DF vector Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: acoplan at gcc dot gnu.org Target Milestone: --- typedef float __attribute((vector_size(16))) v4sf; v4sf f(v4sf *p) { return *p; } gives: f: vldrw.32 q0, [r0] sub sp, sp, #32 add sp, sp, #32 bx lr with -march=armv8.1-m.main+mve -mfloat-abi=hard -O2 but the sub/add is redundant.