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

            Bug ID: 110638
           Summary: [13 regression] memcpy should be inlined with sve loop
           Product: gcc
           Version: 13.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: zhongyunde at huawei dot com
  Target Milestone: ---

* test:https://gcc.godbolt.org/z/39KddjbE4
```
void va(struct args_t * func_args)
{
    for (int nl = 0; nl < iterations; nl++) {
        for (int i = 0; i < LEN_1D; i++) {
            a[i] = b[i];
        }
        dummy(a, b);
    }
    return ;
}
```

* gcc12: don't transform the loop into a memcpy call, so it can make use of the
new sve feature.

* gcc13: use a normal 'bl      memcpy'

The above regression start from gcc13.

Reply via email to