https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93063
Bug ID: 93063 Summary: Loop distribution and NOP conversions Product: gcc Version: 10.0 Status: UNCONFIRMED Keywords: missed-optimization Severity: enhancement Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: glisse at gcc dot gnu.org Target Milestone: --- This comes from PR 93059. void f(signed short*__restrict p,unsigned short*__restrict q,int n){ for(int i=0;i<n;++i) *p++=*q++; } It would be nice if ldist could handle the NOP conversion and produce memcpy/memmove as in the case without a conversion.